type annotation, type inference

Jean Young Park·2023년 2월 22일
0

react

목록 보기
23/32

type annotaion

개발자가 타입을 타입스크립트에게 직접 말해주는 것

const rate: number = 5 // number 타입 지정

type inference

타입스크립트가 알아서 타입을 추론하는 것

const rate = 5 // 변수 선언과 동시에 초기화할 경우 타입을 알아서 추론한다.

타입을 추론하지 못해서 타입 annotation을 꼭 해줘야하는 경우

1. any 타입을 리턴하는 경우

JSON.parse는 json을 파싱해준다. 인풋으로 들어가는 json을 확인하면 대충 어떤 타입이 리턴될지 개발자는 예상 할 수 있지만, 타입스크립트는 여기까지 지원하지 않는다.

const json: string = '{"x":4, "y":7}'
const coordinates = JSON.parse(json)
console.log(coordinates)

2. 변수 선언을 먼저하고 나중에 초기화하는 경우

변수 선언과 동시에 초기화하면 타입을 추론하지만, 선언을 먼저하고 나중에 값을 초기화할때에는 추론하지 못한다.

let greeting
greeting = 'hello'

3. 변수에 대입될 값이 일정치 못하는 경우

여러 타입이 지정되어야 할 때에는 | 로 여러 타입을 애노테이션 해준다.

let num = [-7, -2, 10]
let numAboveZero: boolean | number = false

for(let i = 0; i < num.length; i++){
  if(num[i] > 0){
    numAboveZero = num[i]
  }
}

0개의 댓글