목차
설명
원시 데이터 타입 number, string, boolean
을 명시적으로 설정한 변수 선언은 다음과 같이 작성합니다.
// 명시적으로 number 타입을 설정
let product_id:number = 124981;
// 명시적으로 string 타입을 설정
let product_name:string = 'VR 글래스';
// 명시적으로 boolean 타입을 설정
let is_waterprofing:boolean = false;
설정된 데이터 타입이 아닌, 데이터 타입을 할당하려 할 경우 TypeScript는 컴파일 과정에서 다음과 같은 오류 메시지를 출력해 사용자에게 알립니다.
// [오류]
// [ts] '"p9023412"' 형식은 'number' 형식에 할당할 수 없습니다.
// let product_id: number
product_id = 'p9023412';
// [오류]
// [ts] '() => void' 형식은 'string' 형식에 할당할 수 없습니다.
// let product_name: string
product_name = function(){};
// [오류]
// [ts] '() => void' 형식은 'string' 형식에 할당할 수 없습니다.
// let product_name: string
is_waterprofing = 0;
설명
동적 형 지정 언어인 JavaScript는 선언된 변수에 어떤 값이든 재 할당이 가능합니다. 반면 TypeScript는 명시적으로 데이터 유형을 설정해 사용하는 정적 형 지정 언어로 타입을 지정해 사용하는 것이 권장됩니다.
하지만 애플리케이션 개발 시 어떤 타입을 할당해야 할지 알지 못하는 경우(외부 라이브러리나 동적 콘텐츠를 사용할 경우) 가 있을 수 있습니다. 이런 경우 어떤 타입도 할당 가능하도록 any
를 설정할 수 있습니다. JavaScript는 기본적으로 변수에 any
가 할당된 것과 같습니다.(자동으로 형 변환이 이루어집니다)
// 명시적으로 any 타입 지정
let product_id:any = 124981;
// any 유형이 설정되었으므로 어떤 유형도 값으로 할당 가능
product_id = 'p9023412';
다음과 같이 변수 선언과 초기화 과정에서 값을 할당하지 않으면, 암시적으로 any 타입이 지정됩니다.
// 암시적으로 any 타입 지정
let product_id;
product_id = 124981;
product_id = 'p9023412';