Node.js 20.0 вече е пуснат и това са неговите новини

Node-js

Node.js е междуплатформена среда за изпълнение на сървърен слой с отворен код, базирана на езика за програмиране JavaScript, асинхронна, с I/O данни в архитектура, управлявана от събития, и базирана на двигателя V8 Node.js Google.

В пускане на новата версия на Node.js 20.0, който е рамка за изпълнение на мрежови приложения в JavaScript. Тази нова версия на Node.js 20.0 е присвоена на клона за дълга поддръжка, но този статус няма да бъде присвоен до октомври, след стабилизиране.

За тези от вас, които са нови за платформата Node.js, трябва да знаете, че тя може да се използва както за поддръжка на сървъри за уеб приложения, така и за създаване на обикновени клиентски и сървърни мрежови програми.

За разширяване на функционалността на приложенията за Node.js е подготвена голяма колекция от модули, в която можете да намерите модули с внедряване на сървъри и клиенти.

Основни нови функции на Node.js 20.0

В тази нова версия на Node.js 20.0 двигателят V8 е актуализиран до версия 11.3, използвана в Chromium 113, която включва няколко промени в сравнение с клона, който използва двигателя Chromium 107, функции String.prototype.isWellFormed и toWellFormed, Array.prototype и TypedArray.prototype те имат методи за работа с копие при промяна на обекти Array и TypedArray, v флаг в RegExp, поддръжка за преоразмеряване на ArrayBuffer и увеличаване на размера на SharedArrayBuffer, последно извикване в WebAssembly.

Друга промяна, която се откроява в новата версия, е тази предложен е експериментален механизъм за модел на разрешение че ви позволява да ограничите достъпа до определени ресурси по време на изпълнение. Поддръжката за модела на разрешения се активира чрез указване на флага "--експериментално-разрешение" когато тичаш.

В допълнение към това, в Node.js 20.0 е подчертано, че драйвери за ECMAScript модули Външен (ESM) зарежда се чрез опция „–експериментален товарач“ сега се изпълнява в отделна нишка, изолирана от основната нишка, което елиминира пресичането на кода на приложението и заредените ESM модули. Подобно на браузърите, методът import.meta.resolve() вече работи синхронно, когато се извиква от приложение. В един от предстоящите клонове на Node.js поддръжката за зареждане на ESM се планира да бъде преместена в категорията стабилни функции.

Също така се подчертава, че беше сформиран екип за изпълнение отделно от, в подготовка за новия клон, тъй като работи за ускоряване на различни компоненти по време на изпълнение, включително анализиране на URL адреси, fetch() и EventTarget. Например, разходите за инициализация на EventTarget са намалени наполовина, производителността на метода URL.canParse() е значително подобрена и ефективността на таймерите е подобрена. В допълнение, пакетът включва пускането на високопроизводителен анализатор на URL адреси: Ada 2.0, написан на C++.

От друга страна се подчертава, че продължава разработването на експериментална функция за доставяне на приложения под формата на един изпълним файл (SEA, единични изпълними приложения). Създаването на изпълним файл вече изисква замяна на петно, генерирано от JSON конфигурационен файл (вместо замяна на JavaScript файл).

От други промени които се открояват от новата версия:

  • При първоначалното изпълнение бяха предложени опции за ограничаване на достъпа за запис (–allow-fs-write) и четене (–allow-fs-read) до определени части на FS, дъщерни процеси (–allow-child-process), допълнения ( - -no-addons) и нишки (–allow-worker).
  • Модулът node:test (test_runner), предназначен да създава и изпълнява JavaScript тестове, които връщат резултати във формат Test Anything Protocol (TAP), е преместен в stable.

    Подобрена съвместимост на Web Crypto API с реализации от други проекти.
    Добавена е официална поддръжка за Windows на ARM64 системи.

  • Продължаваща поддръжка за разширения на WebAssembly System Interface (WASI) за изграждане на самостоятелни WebAssembly приложения. Премахна необходимостта да се посочи специален флаг на командния ред, за да се активира поддръжката на WASI.

Накрая sАко се интересувате да научите повече за него, можете да проверите подробностите в следната връзка.

Node.js 20.x ще се поддържа до 30 април 2026 г. По-старият клон на Node.js LTS 18.x ще се поддържа до април 2025 г., а по-старият клон LTS 16.x до септември 2023 г.

Как да инсталирам 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, Centos и производни:

sudo dnf -i nodejs npm

И накрая, друг от методите за инсталиране на Node.js е от пакетите Snap и за това е достатъчно да изпълните следната команда:

sudo snap install node --classic