TypeScript에서 "type"예약어는 무엇입니까?
TypeScript에서 인터페이스를 만들려고 할 때 "type"이 키워드 또는 예약어라는 것을 알았습니다. 예를 들어 다음 인터페이스를 만들 때 "type"은 TypeScript 1.4를 사용하는 Visual Studio 2013에서 파란색으로 표시됩니다.
interface IExampleInterface {
type: string;
}
그런 다음 다음과 같이 클래스에서 인터페이스를 구현하려고한다고 가정 해 보겠습니다.
class ExampleClass implements IExampleInterface {
public type: string;
constructor() {
this.type = "Example";
}
}
클래스의 첫 번째 줄에서 인터페이스에 필요한 속성을 구현하기 위해 "type"이라는 단어를 입력하면 IntelliSense가 "typeof"또는 "new"와 같은 다른 키워드와 동일한 아이콘을 가진 "type"과 함께 나타납니다. ".
나는 둘러 보았고 TypeScript에서 "type"을 "strict mode reserved word"로 나열하는 이 GitHub 문제 를 찾을 수 있었지만 그 목적이 실제로 무엇인지에 대한 추가 정보는 찾지 못했습니다.
나는 내가 뇌 방귀를 앓고 있다고 의심하고 이것은 내가 이미 알아야 할 명백한 것이지만 TypeScript에서 "type"예약어는 무엇입니까?
"유형 별칭"에 사용됩니다. 예를 들면 :
type StringOrNumber = string | number;
type DictionaryOfStringAndPerson = Dictionary<string, Person>;
참조 : TypeScript 사양 v1.5 (섹션 3.9, "유형 별칭", 46 및 47 페이지)
업데이트 : 이제 1.8 사양의 섹션 3.10에 있습니다. 업데이트 된 사양 및 링크에 대해 @RandallFlagg에게 감사드립니다.
업데이트 : TypeScript Handbook , "Type Aliases"를 검색하면 해당 섹션으로 이동할 수 있습니다.
타이프 스크립트에 키워드 입력 :
typescript에서 type 키워드는 유형에 대한 별칭을 정의합니다. type 키워드를 사용하여 사용자 정의 유형을 정의 할 수도 있습니다. 이것은 예를 통해 가장 잘 설명됩니다.
type Age = number | string; // pipe means number OR string
type color = "blue" | "red" | "yellow" | "purple";
type random = 1 | 2 | 'random' | boolean;
// random and color refer to user defined types, so type madness can contain anything which
// within these types + the number value 3 and string value 'foo'
type madness = random | 3 | 'foo' | color;
type error = Error | null;
type callBack = (err: error, res: color) => random;
당신은 스칼라 유형 (유형 작성할 수 있습니다 string
, number
같은 리터럴 값의도 등), 그러나 1
나 'mystring'
. 다른 사용자 정의 유형의 유형을 작성할 수도 있습니다. 예를 들어 madness
유형 random
과 그 color
안에 있는 유형 .
그런 다음 문자열을 리터럴로 만들려고하면 (그리고 IDE에 지능이 있음) 제안 사항이 표시됩니다.
유형 색상에서 파생 된 유형 광기, 유형 임의에서 파생 된 '랜덤', 마지막으로 'foo'
유형 광기 자체에있는 문자열 을 모두 표시합니다.
참고 URL : https://stackoverflow.com/questions/31364693/what-is-the-type-reserved-word-in-typescript
'IT TIP' 카테고리의 다른 글
부호있는 / 부호없는 비교 (0) | 2020.10.14 |
---|---|
__weak 참조와 __block 참조의 차이점은 무엇입니까? (0) | 2020.10.14 |
pushState 및 SEO (0) | 2020.10.14 |
mysqldump-자동 증가없이 구조 내보내기 (0) | 2020.10.14 |
Subversion의 상태 "S" (0) | 2020.10.14 |