타입스크립트가 코드를 해석해 나가는 동작을 의미함
let x = 3;
number
로 타입이 추론되는 것을 확인할 수 있다.Best Common Type
이라고 한다.number|null
로 추론된 것을 알 수 있다.Best Common Type
이외에 문맥상으로 타입이 결정되는 경우도 있다.Contextual Typing
(문맥상의 타이핑)이라고 한다.window.onmousedown = function (mouseEvent) {
console.log(mouseEvent.button); //<- OK
console.log(mouseEvent.kangaroo); //<- Error!
};
mouseEvent
는 window.onmousedown
때문에 마우스 이벤트와 연관되어 있다고 추론된다. 때문에 button
속성은 확인할 수 있지만, kangaroo
속성은 시스템에서 없다고 결론을 내린다.window.onscroll = function (uiEvent) {
console.log(uiEvent.button); //<- Error!
};
const handler = function (uiEvent) {
console.log(uiEvent.button); //<- OK
};
any
타입이 부여된다.--noImplicitAny
옵션을 사용하면 에러가 발생한다.value
형태에 기반하여 이루어져야한다.