TypeScript теперь отслеживает использование объединений как альясов типов. Благодаря этому такие альясы отображаются в сообщениях об ошибках, в генерируемых d.ts-файлах и т.д.
В новой версии TypeScript возможно использовать rest-элементы в любой позиции кортежа, но остаётся одно ограничение — они не могут идти после других rest-элементов и до опциональных элементов. Также при деструктуризации кортежей неиспользуемые элементы можно пометить символом подчёркивания
_ ( let [_first, second] = getValues(); ), чтобы не возникала ошибка с включённой опцией noUnusedLocals.Появилась новая опция
noPropertyAccessFromIndexSignature. Она отключает возможность использования точки для доступа к тем свойствам объекта, которые определяются с помощью сигнатуры строчного индекса (string index signature).С сигнатурами конструкторов теперь можно использовать модификатор
abstract. Эта фича даёт возможность типизации некоторых ООП-техник.Если внутри логических выражений с
&& и || будет находиться функция без её вызова, это будет приводить к ошибке компиляции под флагом --strictNullChecks.Появилась поддержка флага
--explainFiles. С его помощью можно понять, почему файл был включён в процесс компиляции.Также была включена строгая проверка оператора
in, и ослаблены правила взаимодействия между опциональными свойствами и сигнатурами строчного индекса.#release #typescript
https://devblogs.microsoft.com/typescript/announcing-typescript-4-2/