더북(TheBook)

첫 번째 실습 순서에서 함수의 반환 타입을 지정할 때만 해도 any라는 타입이 표시되었습니다. 하지만 현재 시점에서는 todoItems의 변수 타입이 { id: number; title: string; done: boolean }으로 지정되어 있기에 비주얼 스튜디오 코드 내부적으로 해당 변수의 타입을 함수의 반환 타입과 연결하여 그림과 같이 함수의 반환 타입이 추론되는 것을 볼 수 있습니다. 이런 식으로 타입을 지정한다면 어렵지 않게 타입스크립트 코드를 작성할 수 있습니다.

현재 프로젝트의 규칙상 함수의 반환 타입을 명시적으로 작성하지 않으면 ESLint 에러가 표시되므로 다시 타입을 명시해 줍니다.

function logFirstTodo(): { id: number; title: string; done: boolean } {
  return todoItems[0];
}

마지막으로 showCompleted() 함수를 보겠습니다.

function showCompleted(): any {
  return todoItems.filter(item => item.done);
}
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.