반응형
만약 개발을 진행할 때 평소에 boolean 값이 었다가 특정 상활 일 때 다른 타입의 값을 가진다고 가정했을 때이다.
물론 애초에 그렇게 짜는 건 좋은 코드가 아닐테지만 특수한 상황이라 가정하고 그럴 일이 생긴다고 가정했을 때
let numbers = [-12,-4,10];
let numberAboveZero = false;
for(let i=0; i<numbers.length; i++){
if(numbers[i] > 0){
numberAboveZero = numbers[i]
}
}
이런 상황에서 inference로 인해 boolean 이었던 변수가 number 타입의 값을 가지게 되면 에러가 뜬다.
이럴 때 값이 될 수 있는 타입들을 type annotation을 이용하면 해결 할 수 있다.
반응형