Node.js 21 уже выпущен, и это его новости

узел-js

Node.js — это кроссплатформенная среда выполнения с открытым исходным кодом на основе JavaScript.

Несколько дней назад был анонсирован релиз новой версии Node.js 21 , в которой представлены обновления движка JavaScript V8 до версии 11.8, новый экспериментальный индикатор для инвертирования значений по умолчанию модуля –experimental-default-type, интегрированный клиент WebSocket, множество обновлений для нашего средства запуска тестов и многое другое.

С выпуском новой ветки Node.js 21.0 (поддержка которой продлится 6 месяцев), после стабилизации ветки 20.0, она получит статус LTS и будет поддерживаться до апреля 2026 года, в то время как поддержка предыдущей ветки LTS Node.js 18.0 продлится до сентября 2025 года, а в следующем году (2024) поддержка ветки LTS 16.0 будет прекращена.

Тем, кто не знаком с платформой Node.js, следует знать, что ее можно использовать как для обслуживания серверов веб-приложений, так и для создания обычных клиентских и серверных сетевых программ. Для расширения функционала приложений для Node.js подготовлена ​​большая коллекция модулей, в которой можно найти модули с реализацией серверов и клиентов.

Основные новые возможности Node.js 21

В новой версии Node.js 21 движок V8 обновлен до версии 11.8, используемой в Chromium 118, которая теперь поддерживает метод ArrayBuffer.prototype.transfer, возможность группировки массивов и инструкции WebAssembly для обработки констант. Включенный менеджер пакетов npm (10.2.0) и парсер llhttp (9.1.2) также были обновлены, а поддержка Visual Studio 2019 и версий macOS до 11.0 прекращена.

Что касается улучшений в Node.js 21, то одной из главных новинок является стабилизация Fetch API, предназначенного для загрузки ресурсов по сети и упрощения написания универсального JavaScript-кода, подходящего для работы как на стороне сервера, так и на стороне клиента.

Ещё один API, который стабилизировался, — это WebStreams API, предоставляющий доступ к потокам данных, получаемым по сети. Этот API позволяет добавлять собственные контроллеры, которые работают с данными по мере их поступления по сети, не дожидаясь полной загрузки файла.

Кроме того, стоит отметить, что добавлен экспериментальный режим, использующий реализацию модуля JavaScript по умолчанию ESM вместо CommonJS (специфичной для Node.js). Упоминается, что это изменение не затрагивает модули, формат которых явно определен с помощью поля "type" в package.json; это указывается с помощью флага " --input-type ". Для включения новых конфигураций модулей предложен флаг " --experimental-default-type ".

Среди других существенных изменений в новой версии можно отметить следующие:

  • Добавлена ​​экспериментальная реализация API WebSocket. Чтобы включить поддержку WebSocket, флаг «–experimental-websocket».
  • В функцию fs.writeFile была добавлена ​​опция очистки, позволяющая принудительно сбрасывать данные на диск после каждой операции записи.
  • Повышена производительность кода, связанного с анализом URL-адресов, получением API, потоками, node:fs и HTTP.
  • Добавлен глобальный объект браузера.
  • В параметре «-тест«, добавлена ​​поддержка глобальных скинов для выбора тестов для запуска.
  • Поддержка обработчика globalPreload прекращена в пользу вызовов регистрации и инициализации для настройки модулей.

Наконец, если вас интересует более подробная информация по этому вопросу , вы можете найти ее по следующей ссылке.

Как установить Node.JS в Linux?

Для тех, кто заинтересован в установке новой версии Node.js, процесс довольно прост. Просто откройте терминал в вашей системе и введите одну из следующих команд , в зависимости от вашего дистрибутива.

Пользователям Debian, Ubuntu и их производных достаточно ввести следующее:

sudo apt-get update
sudo apt-get install nodejs
sudo apt-get install npm

Для пользователей Arch Linux, Manjaro, Arco Linux или любых других производных Arch:

sudo pacman -S nodejs npm

Для пользователей Fedora, RHEL и производных:

sudo dnf -i nodejs npm

Наконец, еще один из способов установки Node.js — из пакетов Snap, и для этого достаточно выполнить следующую команду:

sudo snap install node --classic

Добавить в качестве предпочтительного источника в Google