학습 공간 개념 · 판단 · 실험

Fanta Lab

질문 121 · 실전 면접 답변

tsconfig.json은 어떤 프로젝트 계약을 정의하나요?

이렇게 답해 보세요 (핵심 답변)

tsconfig.json은 프로젝트에 포함할 파일 범위와 타입 검사·모듈 해석·코드 출력 규칙을 정의하는 설정 파일입니다. strict로 검사 강도를 높이고, target과 lib으로 대상 런타임의 문법 수준과 기본 환경 타입을 맞추며, module과 moduleResolution을 실제 번들러나 Node.js 환경과 일치시킵니다. 또한 Vite 같은 번들러가 출력을 맡는 환경에서는 noEmit: true를 켜서 TypeScript를 타입 검사 전용으로 활용할 수 있습니다.

함께 설명하면 좋은 이유 (꼬리질문 대비)

  1. exclude에 경로를 넣더라도 include된 파일이 그 경로의 파일을 직접 import하면 타입 검사 대상에 함께 포함됩니다.
  2. 번들러가 타입만 제거하고 번들링하는 환경에서는 에디터 밖에서도 오류를 잡을 수 있도록 CI 파이프라인에서 tsc --noEmit을 별도로 실행해야 합니다.

면접에서 자주 하는 실수

tsconfig의 target이나 lib을 최신 버전으로 높였다고 해서 구형 브라우저에 없는 내장 API의 폴리필(Polyfill)이 자동으로 설치되지는 않습니다.

원리와 예제까지 읽기

공식 참고 자료

질문 목록 출처 ↗ · 원본 121번을 바탕으로 질문과 답변을 새로 정리했습니다.

← TypeScript