TypeScript 4.0 был выпущен с улучшениями в процессах сборки и редактирования, а также с поддержкой вариативных типов кортежей. TypeScript — это надмножество JavaScript, которое добавляет дополнительные статические типы, которые могут быть проверены компилятором TypeScript для выявления распространенных ошибок в ваших программах.
Вскоре после запуска нового веб-сайта TypeScript выходит новое крупное обновление. Одним из основных изменений в новом выпуске является поддержка типов Variadic Tuple. Стандартные кортежи TypeScript — это типы, которые работают как массивы с фиксированным числом элементов известных типов.
Кортежи с переменными параметрами могут использоваться для определения типа кортежа, который имеет те же свойства — определенную длину и известен тип каждого элемента, но где точная форма еще не определена. Использование вариативных кортежей означает, что вы можете использовать оператор rest для передачи типов через средство проверки типов таким же образом, как и универсальные.
Кроме того, теперь синтаксис типа кортежа может быть универсальным. Это позволяет представлять операции более высокого порядка с кортежами и массивами, даже если фактические типы, над которыми работают, неизвестны. Когда общие спреды создаются или заменяются реальным типом, они могут создавать другие наборы типов массивов и кортежей. В более общем плане с кортежами теперь вы можете иметь помеченные элементы кортежа, чтобы сделать код более читабельным.
Другие улучшения включают поддержку вывода свойств класса из конструкторов, что означает, что TypeScript теперь может использовать анализ потока управления для определения типов свойств в классах, когда включен noImplicitAny.
Также были добавлены три новых составных оператора присваивания. Операторы составного присваивания применяют оператор к двум аргументам, а затем присваивают результат левой стороне, но до сих пор в JavaScript отсутствовала поддержка логического и (&&), логического или (||) и объединения с нулевым значением (??). TypeScript добавил поддержку новой функции ECMAScript, чтобы добавить три новых оператора присваивания: && =, || = и ?? =.
Также была добавлена поддержка пользовательских фабрик JSX. JSX использует фрагменты, тип элемента JSX, который может возвращать несколько дочерних элементов. Поддержка TypeScript для этого не была такой же, как в других библиотеках, поэтому TypeScript 4 изменил свою технику, чтобы пользователи могли настраивать фабрику фрагментов с помощью новой опции jsxFragmentFactory.
Ян Эллиот — автор нескольких книг о JavaScript. Просто JavaScript: идиоматический подход предназначен для программистов, знакомых с другим языком, и радикально рассматривает JavaScript с учетом того, как он основан на объектах. JavaScript Async охватывает асинхронное программирование на JavaScript, async / await, Promises, Service Workers и так далее. В его последней книге «Растровая графика JavaScript с холстом» показано, как использовать холст для создания графики, не прибегая к каким-либо библиотекам.