![[TypeScript] Exhaustive Check로 "수정 깜빡함" 버그 막기](/_next/image?url=%2Fog%2F64ed1ebc26c78c43.png&w=3840&q=75&dpl=dpl_BKHhBAFidVtg3WyVCedfrBWBksgF)
[TypeScript] Exhaustive Check로 "수정 깜빡함" 버그 막기
새 타입을 하나 추가했을 뿐인데, 컴파일러가 "여기도 고쳐야 하지 않냐"라고 먼저 알려줬다. 문제: 컴파일러는 빠뜨린 케이스를 알려주지 않는다.union type을 switch로 분기하는 코드는 흔하다.문제는 union에 멤버가 추가됐을 때, 타입스크립트가 처리 안 한 케이스에 대해 침묵한다는 것이다.type Shape = Circle | Square;function getArea(shape: Shape) { switch (shape.kind) { case 'circle': return Math.PI * shape.radius 2; case 'square': return shape.sideLength 2; } } 여기에 Triangle을 추가해도 ge..