абстрактное синтаксическое дерево (АСД). Оно представляет собой структуру данных, игнорирующую пустые области, комментарии и ваше ценное мнение о пробелах или табуляции.
Синтаксис [key: T}: U называется сигнатурой индекса. С ее помощью вы сообщаете компилятору, что данный объект может содержать больше ключей. Читать его следует так: «Для этого объекта все ключи типа T должны иметь значения типа U». Сигнатуры индекса позволяют безопасно добавлять дополнительные ключи объекту, помимо объявленных ранее.
Но тип (T) ключа сигнатуры индекса должен быть совместим либо со string, либо с number11
компилятор — считывает и преобразует ваш текст в абстрактное синтаксическое дерево (АСД). Оно представляет собой структуру данных, игнорирующую пустые области, комментарии и ваше ценное мнение о пробелах или табуляции. Затем компилятор преобразует АСД в низкоуровневую форму — байт-код, который можно запустить в среде выполнения и получить результат.
Type
Meaning
null
Отсутствие значения
undefined
Переменная, которой не присвоено значение
void
Функция, не имеющая оператора return
never
Функция, никогда ничего не возвращающая
Строгая проверка на null
В более старых версиях TypeScript (или при опции strictNullChecks, установленной как false) null ведет себя необычно: он является подтипом всех типов, кроме never.
Массивы только для чтения похожи на обычные, но их нельзя обновить на месте. Чтобы создать такой массив, используйте неизменяющие методы вроде .concat и .slice вместо изменяющих — .push или .splice:
Кортежи также поддерживают оставшиеся элементы, которые вы можете использовать для типизации кортежей минимальной длины:
// Список строк с как минимум одним элементом
let friends: [string, ...string[]] = ['Sara', 'Tali', 'Chloe', 'Claire']