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 도 받을 수 있고, 다 가능하다.
댓글 없음:
댓글 쓰기