TypeScript 5.3 поставляется с поддержкой атрибутов импорта.

автор red


TypeScript 5.3, обновление строго типизированного варианта JavaScript от Microsoft, которое добавляет поддержку атрибутов импорта для модулей ECMAScript, теперь доступно в качестве рабочей версии.

TypeScript 5.3 также предлагает различные функции: от стабильной поддержки режима разрешения в типах импорта до интерактивных подсказок по вставке типов. Доступ к рабочей версии, анонсированной 20 ноября, можно получить через NuGet или NPM. Команда НПМ:

npm install -D typescript

TypeScript 5.3 поддерживает последние обновления предложения атрибутов импорта ECMA. Предложение ECMA вводит встроенный синтаксис для операторов импорта модуля для передачи информации вместе со спецификатором модуля. Эти атрибуты будут поддерживать дополнительные типы модулей обычным способом в средах JavaScript, начиная с модулей JSON.

Microsoft заявила, что одним из вариантов использования атрибутов импорта является предоставление информации об ожидаемом формате модуля во время выполнения. В приведенном примере Microsoft заявила, что содержимое атрибутов не проверялось TypeScript, поскольку они зависят от хоста и оставлены в покое, чтобы браузеры и среды выполнения могли их обрабатывать.

Атрибуты импорта — это развитие более раннего предложения — утверждений импорта, которые были реализованы в TypeScript 4.5 в ноябре 2021 года. Наиболее очевидным отличием является использование with ключевое слово над assert ключевое слово. Менее заметное отличие заключается в том, что среда выполнения теперь может использовать атрибуты для управления разрешением и интерпретацией путей импорта, в то время как утверждения импорта могут утверждать некоторые характеристики только после загрузки модуля. Планы предусматривают отказ от старого синтаксиса утверждений импорта в пользу предлагаемого стандарта атрибутов импорта.

TypeScript 5.3 также добавляет возможность отдавать предпочтение автоматическому импорту только текста, когда это возможно. Раньше, когда TypeScript генерировал автоматический импорт чего-либо в позиции типа, он добавлял модификатор типа на основе настроек разработчика. Благодаря недавнему изменению TypeScript теперь позволяет использовать опцию, специфичную для редактора.

Производственный выпуск следует за бета-версией, опубликованной 3 октября, и версией-кандидатом, опубликованной 3 ноября. Предшественник TypeScript 5.2 был выпущен 24 августа.

Другие новые функции и улучшения в TypeScript 5.3:

  • TypeScript 5.3 поддерживает resolution-mode атрибут для import type.
  • Сужение может выполняться в зависимости от условий в каждом case пункт с switch (true).
  • TypeScript 5.3 более тщательно проверяет super доступ к свойствам и вызовы методов, чтобы увидеть, соответствуют ли они полям класса. Если они это сделают, возникнет ошибка проверки типа.
  • Подсказки вставки TypeScript теперь поддерживают переход к определению типов, что упрощает навигацию по коду.
  • При запуске TypeScript через tscкомпилятор будет избегать анализа JSDoc, сокращая время анализа и использование памяти для хранения комментариев, а также время, затрачиваемое на сбор мусора.
  • Выполнена консолидация между tsserverlibrary.js и typescript.js.
  • В JavaScript можно переопределить поведение instanceof оператор. Для этого значение справа от оператора должно иметь определенный метод с именем Symbol.hasInstance. Чтобы лучше смоделировать это поведение в instanceofTypeScript теперь проверяет, есть ли такое [Symbol.Instance] метод существует и объявлен как функция предиката типа. Если да, то проверенное значение в левой части instanceof оператор будет соответствующим образом сужен предикатом этого типа.

Дальше читайте это:

  • Лучшее программное обеспечение с открытым исходным кодом 2023 года
  • Сертификаты программирования все еще имеют значение?
  • Облачные вычисления больше не являются пустяком
  • Что такое генеративный ИИ? Искусственный интеллект, который создает
  • Программирование с помощью ИИ: советы и лучшие практики от разработчиков
  • Почему Wasm — это будущее облачных вычислений

Related Posts

Оставить комментарий