Подтвердить что ты не робот

Что такое зарезервированное слово "тип" в TypeScript?

Я просто заметил при попытке создать интерфейс в TypeScript, который "type" является либо ключевым словом, либо зарезервированным словом. При создании следующего интерфейса, например, "тип" отображается в синем в Visual Studio 2013 с помощью TypeScript 1.4:

interface IExampleInterface {
    type: string;
}

Скажем, что вы затем попытаетесь реализовать интерфейс в классе, например:

class ExampleClass implements IExampleInterface {
    public type: string;

    constructor() {
        this.type = "Example";
    }
}

В первой строке класса, когда вы вводите (извините) слово "тип", чтобы реализовать свойство, требуемое интерфейсом, IntelliSense появляется с "типом", имеющим тот же значок, что и другие ключевые слова, такие как "typeof", или "новый".

Я посмотрел вокруг и нашел эту проблему GitHub, в которой "тип" используется как "зарезервированное слово строгого режима" в TypeScript, но Я не нашел никакой дополнительной информации о том, какова его цель.

Я подозреваю, что у меня есть мозговой пердит, и это то, что я уже должен знать, но что такое зарезервированное слово типа "<" для w870 для?

4b9b3361

Ответ 1

Он используется для "псевдонимов типов". Например:

type StringOrNumber = string | number;
type DictionaryOfStringAndPerson = Dictionary<string, Person>;

Ссылка: TypeScript Спецификация v1.5 (раздел 3.9, "Псевдонимы типа", стр. 46 и 47)

Обновить: Теперь о разделе 3.10 спецификации 1.8. Спасибо @RandallFlagg за обновленную спецификацию и ссылку