TypeScript 에서 object type
TypesScript 에서 object
Type 은 primitive 를 배제한 type 을 이야기 한다. 그래서 generic parameter 로 <P extends object>
를 사용했는데, primitive 를 paramter 로 넘기면, error 가 발생한다.
TypeScript 에서 Object type 도 있는데, 이녀석은 null
, undefined
를 제외한 모든 녀석을 포함한다. 그런데 이 type 은 사용하지 말라고 한다.
다음글에서는 {}
과 unknown
의 차이를 알려준다.
- TypeScript-wiki/Breaking-Changes.md at 23a53b8b7a9f0be7c12beab241fd1423a2336898 · microsoft/TypeScript-wiki · GitHub
{}
은 string index 가 된다(k["foo"]
), 단--noImplicitAny
에서는 에러가 난다.{}
은null
,undefined
를 포함하지 않는다.unknown
은 포함한다.{}
은object
에 할당된다.unknown
은 안된다.
any
는 모든 것을 포함한다. 여기에는 unknown
도 받을 수 있고, never
도 받을 수 있고, 다 가능하다.
댓글 없음:
댓글 쓰기