1. 기본형에 타입을 지정한 경우
① 타입을 명시적으로 지정하지 않아도 자바스크립트 엔진은 변수의 타입을 인지할 수 있습니다.
let test = 3; // let test : number
② 변수만 선언하면 변수의 타입은 'any'입니다.
let test; // let test : any
③ 변수의 타입을 명시한다면, 다른 타입으로 변수를 할당할 수 없습니다.
let test : number;
test = 'hello'; // error TS2322: Type 'string' is not assignable to type 'number'.
※ 참고) test 변수의 값을 문자열로 바꾸고 싶으면, 새로운 변수를 이용하여 문자열을 추가합니다.
let test : number;
test = 3;
let str : string = test.toString(); // 같은 표현 - let str : string = String(test);
※ 주의 사항) 타입의 첫 글자를 대문자로 작성할 경우, 브라우저는 해당 타입을 객체로 인식할 수 있으므로 타입은 소문자로 표기합니다.
let num : Number;(X) // Number는 자바스크립트 객체(Number, String, Array, Object, Boolean)이므로
let num : number;(O)
2. 배열에 타입을 지정할 경우
① 배열은 타입을 2가지 방식으로 표시합니다.
let arr : number[] = [1, 2, 3];
let arr : Array<number> = [1, 2, 3];
② 배열은 여러 가지 자료형을 원소로 저장할 수 있으므로 타입을 다음과 같은 방식으로 표시할 수 있습니다.
let arr : (string | number | boolean)[] = [true, 2, '3'];
let arr : (string | number | boolean)[] = [true, 2, {}];(X) // Type '{}' is not assignable to type 'string | number | boolean' .ts(2322)
'프론트엔드 개발 > TypeScript' 카테고리의 다른 글
튜플(Tuple)이란 무엇인가? (0) | 2023.12.13 |
---|---|
tsconfig.json이란 무엇인가? (1) | 2023.12.08 |
lib.dom.d.ts이란 무엇인가? (0) | 2023.06.01 |
watch 설정 (0) | 2023.05.30 |
.ts 파일을 .js 파일로 변환하는 방법 (0) | 2023.05.30 |
댓글