← Back to NOTES 🌰 ← Back to Effective TypeScript

← 아이템 53 - 타입스크립트 기능보다는 ECMAScript 기능을 사용하기

핵심 요약

객체를 순회할 때 for-in 루프의 키 타입은 구체적인 키 타입이 아닌 string으로 추론된다. 이는 TypeScript가 구조적 타이핑을 사용하여 할당 가능한 모든 객체를 허용하기 때문이다. 정확한 타입이 필요하면 let k: keyof T를 사용하고, 일반적인 순회에는 Object.entries를 사용하는 것이 좋다. 프로토타입 오염 가능성도 항상 염두에 두어야 한다.

자세한 내용

for-in 루프의 키 타입 문제:

구조적 타이핑의 영향:

keyof를 사용한 해결:

Object.entries 사용: