const input1 = document.getElementById("num1")! as HTMLInputElement;
!(느낌표) 는 요소가 꼭 있다는 것을 알려줄 때 사용한다.
튜플 ex
const person: {
name: string;
age: number;
hobbies: string[];
role: [number, string];
} = {
name: 'Maximilian',
age: 30,
hobbies: ['Sports', 'Cooking'],
role: [2, 'author']
};
enum (열거형) ex
enum Role { ADMIN = 'ADMIN', READ_ONLY = 100, AUTHOR = 'AUTHOR' };
const person = {
name: 'Maximilian',
age: 30,
hobbies: ['Sports', 'Cooking'],
role: Role.ADMIN
};
값을 반환하지 않는 함수는 void를 표준으로 사용한다.
값을 반환하지만 반환값이 없을 때 undefinded를 사용한다.
function a(n1: number, n2: number, cb: (num: number) => void) {
const result = n1 + n2;
cb(result);
}
a(10, 20, (result) => {
console.log(result);
return true;
});
콜백 함수는 자신이 전달되는 인수가 반환 값을 기대하지 않는 경우에도 값을 반환할 수 있습니다.
any, unknown 모두 모든 타입을 허용한다.
하지만 unknown은 타입을 좁혀서 사용해야하는 의무가 있다.
any 보다는 unknown을 사용하자(이 또한 잘 사용 안함)
절대(never) 타입 ex
function a(message: string, code: number): never {
throw { message: message, errorCode: code };
}
a('An error occured!', 500);
tsc app.ts
관찰모드(watch)
tsc app.ts -w
tsc app.ts --watch
tsc --init 입력 시 tsconfig.json 파일 생김
exclude 설정 안할 시, 기본값으로 node_modules 폴더가 exclude 적용된다.