타입스크립트의 변수 선언

잔잔바리한접시·2022년 6월 14일
1

typescript

목록 보기
5/7

타입스크립트 기본 제공 타입

  • number
  • boolean
  • string
  • object

타입 주석

타입스크립트는 자바스크립트의 변수 선언문을 확장해 타입을 명시할 수 있다! 이를 타입 주석(type annotation)이라고 합니다

기본형태

let 변수이름: 타입
const 변수 이름: 타입 = 초기값

예시

let n: number = 1;
let b: boolean = false;
let s: string = 'str';
let o: object = {}

이 때 타입스크립트는 자바스크립트와 다르게 let으로 선언한 변숫값은 타입 주석으로 명시된 타입에 해당하는 값으로만 변경이 가능합니다.

예시

let n: number = 1;

n = 'hello'; // error

타입 추론

타입스크립트는 자바스크립트와의 호환성을 위해 타입 주석 부분을 생략할 수 있습니다. 타입스크립트는 타입 주석 부분이 생략된 코드를 만나면 대입 연산자 오른쪽 값의 타입을 해당 변수의 타입으로 지정합니다.

이를 타입 추론이라고 합니다.

let n = 1; // n의 타입을 number로 판단
let b = false; // b의 타입을 boolean으로 판단

변수의 선언문에서는 타입 주석을 명시하지 않았지만 컴파일러가 초깃값에 따라서 타입을 추론하므로 각 변수는 초기값의 타입으로 지정됩니다. 따라서 이후에는 각 변수에는 초깃값과 같은 타입의 값만을 저장할 수 있습니다.

any

타입스크립트는 자바스크립트와의 호환을 위해 any라는 이름의 타입을 제공합니다.

예시

let a: any = false;
a = 0;
a = 'hi';
a = {};

이렇게 타입을 any로 지정할 경우에는 어떤 종류의 값도 저장할 수 있습니다.

undefined

자바스크립트에서 undefined는 값입니다. 변수를 초기화하지 않으면 해당 변수는 undefined 값을 가집니다. 타입스크립트에서는 undefined는 타입이기도 하고 값이기도 합니다.

0개의 댓글