Вышел Node.js 21, последняя версия кроссплатформенной среды выполнения JavaScript с открытым исходным кодом, которая включает встроенный клиент WebSocket и поддержку glob в средстве запуска тестов платформы.
Анонсированный 17 октября, Node.js 21 оснащен экспериментальной, совместимой с браузером реализацией WebSocket, доступной через --experimental-websocket
флаг. WebSocket обеспечивает двустороннюю связь между браузером и сервером без необходимости опрашивать сервер для получения ответа.
В Node.js 21 также имеется обновленный инструмент запуска тестов, в который добавлена поддержка glob-выражений при указании --test
параметр. Это означает, что разработчики теперь могут использовать мощные шаблоны glob для более эффективного запуска тестов.
Версия Node.js 21, которую можно загрузить с сайта nodejs.org, заменит Node.js 20 в качестве текущей версии, когда Node.js 20 станет выпуском LTS (долгосрочная поддержка) позднее в этом месяце. Node.js 21 станет текущей версией до апреля 2024 года.
Другие улучшения в Node.js 21:
- Новый флаг,
--experimental-default-type
, может изменить систему модулей по умолчанию, используемую Node.js. Входные данные, явно определенные как модули ES или CommonJS, например, полем «тип» package.json или расширением файла .mjs/cjs, не затрагиваются. С этим флагом то, что в настоящее время неявно является CommonJS, будет интерпретироваться как модули ES под--experimental-default-type=module
. Файлы без расширений интерпретируются как WebAssembly, если--experimental-wasm-modules
передается, и файл начинается с преамбулы WebAssembly,\0asm
. - Команда разработчиков Node.js изучает возможность использования обнаружения синтаксиса модулей ES, чтобы Node.js знал, когда интерпретировать файлы как модули ES. Цель состоит в том, чтобы в конечном итоге найти способ поддержки синтаксиса модуля ES по умолчанию с минимальными критическими изменениями.
-
fetch
иWebStreams
реализации теперь стабильны. - Объект глобального навигатора был введен для улучшения взаимодействия через Интернет. Разработчики могут получить доступ к информации о параллельной работе оборудования через
navigator.hardwareConcurrency
. - Движок Google V8 JavaScript/WebAssembly был обновлен до версии 11.8, обеспечивающей лучшую производительность и такие языковые функции, как группировка массивов и WebAssembly.
extended-const
выражения. - Потоки были оптимизированы за счет удаления избыточных проверок, использования растровых изображений и более эффективного планирования обратных вызовов.
Node.js 21 предшествовали Node.js 20.8.1 и Node.js 20.8.0, обе из которых были анонсированы в течение последних трех недель.
Дальше читайте это:
- Облачные вычисления больше не являются пустяком
- Что такое генеративный ИИ? Искусственный интеллект, который создает
- Программирование с помощью ИИ: советы и лучшие практики от разработчиков
- Python пытается удалить GIL и повысить параллелизм
- 7 причин, по которым Java по-прежнему хороша
- Война за лицензирование открытого исходного кода окончена