본문 바로가기
프론트엔드 개발/TypeScript

기본형과 배열

by 아름다운 미소 2023. 12. 8.

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

댓글