Дмитрий
13 мая 2024
Node.jsmiddle
Node.js недавно выпустила версию 22, и в ней множество значимых обновлений и нововведений, способных существенно улучшить производительность и расширить возможности разработчиков. Давайте рассмотрим основные моменты новой версии:
Ключевые особенности:
- Обновление V8 до версии 12.4: Новый движок JavaScript V8 версии 12.4 предоставляет множество новых возможностей, включая улучшенное управление сборкой мусора WebAssembly, асинхронный метод
Array.fromAsync
, а также новые методы для коллекцийSet
и вспомогательные итераторы. Эти обновления улучшают производительность и расширяют возможности по работе с массивами и коллекциями. - Компилятор Maglev: Этот компилятор теперь включен по умолчанию на поддерживаемых архитектурах. Он повышает производительность краткосрочных командных программ CLI.
- Поддержка
require()
для синхронных графов ESM: Теперь появилась экспериментальная возможность загружать модули ES с использованиемrequire()
, если они полностью синхронны и имеют явную маркировку в виде поля"type": "module"
или расширения.mjs
. Для этого используется флаг-experimental-require-module
. - Выполнение скриптов package.json: В версии 22 добавлена экспериментальная функция выполнения скриптов из
package.json
. Она позволяет использовать CLI-флагnode --run <script-in-package-json>
для запуска определенных скриптов напрямую. Например,node --run test
выполнит командуtest
, прописанную вpackage.json
. - Повышение High Water Mark для потоков: По умолчанию это значение увеличено с 16КБ до 64КБ, что приводит к общему повышению производительности потоков, хотя и требует немного больше памяти. Разработчикам рекомендуется задавать свой уровень High Water Mark, если они ограничены в памяти.
- Режим наблюдения (
node --watch
): Режим наблюдения теперь считается стабильным. Он отслеживает изменения в файлах и автоматически перезапускает процесс Node.js. - Поддержка WebSocket: Теперь поддержка WebSocket включена по умолчанию, предлагая браузер-совместимую реализацию WebSocket-клиента непосредственно в Node.js.
- Функции
glob
иglobSync
: Функции для сопоставления шаблонов путейglob
иglobSync
теперь встроены в модульnode:fs
, что позволяет легко искать файлы по шаблонам. - Улучшение производительности создания
AbortSignal
: Повышена эффективность создания экземпляровAbortSignal
, что значительно ускоряет выполнение операцийfetch
и тестов.
Карта развития разработчика
Получите полную карту развития разработчика по всем направлениям: frontend, backend, devops, mobile
Комментарии
0