TypeScript 2회차 - 타입추론

https://youtu.be/rwqqhvR353A

TypeScript의 가장 독특한 특징은 Static Typing(정적 타이핑)기능을 JavaScript언어에 제공하는 것이다.

Static Typing이란?

타입을 선언, 선언된 타입에 맞는 값만이 할당/반환 되어야 한다는 뜻.

타입 추론 / 타입 명시로 정적타이핑이 뭔지 알아보자!

<타입추론> Type Inference


let a = 5;

js에서는 이 숫자형으로 선언된 변수를 string 타입으로도 재할당 할 수 있는데 ts에서는 a를 string 타입으로 재할당 시 에러가 발생한다.

a = 'hello';
// Type 'string' is not assignable to type 'number'.

재할당하려는 변수값이 숫자가 아니기 때문에 a 변수에 할당 될 수 없다는 것.

a = 10;
//숫자를 할당하는 것은 가능

ts에서는 타입 표기가 없는 경우 타입 정보를 제공 하기 위해 타입을 추론한다.
let a 를 선언할 때 숫자 5로 초기화 했기 때문에 a 의 타입은 ts의 타입 추론에 의해서 자동으로 숫자 타입으로 결정된다.

let student = {

    //각 변수의 할당값들을 토대로 이미 타입추론을 마침. 따라서 
    //선언한 변수의 타입에 맞지 않는 값을 재할당 하려고 하면 
    //에러가 발생한다.
    
    name: 'Jake',
    course: 'Getting Started with TypeScript',
    codingIQ: 80,
    code: function () {
        console.log('brain is working hard');
    }
}

//student.name = 10; //타입 에러

function calculatieCodingIQ (lostPoints) {
    return 100 - lostPoints; 
}

function 위에 커서를 위치시키면 return 인 뺄셈을 통해 반환될 값이 숫자라는 것을 타입추론으로 알고 있다.

좋은 웹페이지 즐겨찾기