1. 함수에 타입 더하기
// JavaScript
const jsAdd = (num1, num2) => {
return num1 + num2;
}
// TypeScript
const tsAdd = (num1: number, num2: number): number => {
return num1 + num2;
}
2. 타입 추론 (Type Inference)
타입을 명시하지 않아도, 지정한 값을 통해 알아서 추론한다.
let x = 3; // x의 타입을 number로 추론
x = true; // 에러 발생
const arr = [1, 2, 3] // arr의 타입을 number[]로 추론
arr.push('Noah') // 에러 발생
3. 옵셔널 파라미터 (Optional Parameters)
JavaScript에는 옵셔널 파라미터가 없고 기본값을 지정해야만 한다.
TypeScript는 '?' (물음표)를 통해 옵셔널 파라미터를 표현할 수 있다.
디폴트 파라미터는 JavaScript와 동일하다.
// 옵셔널 파라미터
const printName = (firstName: string, lastName?: string) => {
console.log(`${firstName} ${lastName}`);
}
printName('Noah', 'Lim'); // Noah Lim
printName('Noah'); // Noah undefined
// 디폴트 파라미터
const printName = (firstName: string, lastName = "Kim") => {
console.log(`${firstName} ${lastName}`);
}
printName('Noah', 'Lim'); // Noah Lim
printName('Noah'); // Noah Kim
4. 나머지 파라미터 (Rest Parameters)
const printName = (firstName: string, ...restOfName: string[]) => {
return firstName + ' ' + restOfName.join(' ');
}
console.log(printName('Noah', 'Sunghoon', 'Lim')); // Noah Sunghoon Lim
'TypeScript' 카테고리의 다른 글
[TypeScript] 제네릭을 사용하는 이유 (0) | 2021.04.15 |
---|---|
TypeScript로 이해하는 객체지향 (0) | 2021.04.14 |
[TypeScript] 유니온 타입은 언제 사용하는가? (0) | 2021.04.13 |
Type Assertion(타입 단언)을 사용하는 이유 (0) | 2021.04.10 |
TypeScript의 기본 타입 알아보기 (0) | 2021.04.10 |