Node.js 20.0 již vyšel a toto jsou jeho novinky

Uzel-js

Node.js je multiplatformní, open source, běhové prostředí serverové vrstvy založené na programovacím jazyce JavaScript, asynchronní, s datovými I/O v architektuře řízené událostmi a založené na enginu V8 Node.js. Google.

The vydání nové verze Node.js 20.0, což je framework pro spouštění síťových aplikací v JavaScriptu. Toto nové vydání Node.js 20.0 bylo přiřazeno větvi dlouhé podpory, ale tento stav bude přidělen až v říjnu, po stabilizaci.

Pro ty z vás, kteří jsou s platformou Node.js noví, měli byste vědět, že ji lze použít jak pro údržbu webových aplikačních serverů, tak pro tvorbu běžných klientských a serverových síťových programů.

Pro rozšíření funkcionality aplikací pro Node.js je připravena velká kolekce modulů, ve kterých naleznete moduly s implementací serverů a klientů.

Hlavní nové funkce Node.js 20.0

V této nové verzi Node.js 20.0 byl modul V8 aktualizován na verzi 11.3 používanou v Chromium 113, která obsahuje několik změn ve srovnání s větví, která používala engine Chromium 107, funkce String.prototype.isWellFormed a toWellFormed, Array.prototype a TypedArray.prototype počítej s metody pro práci s copy on change objektů Array a TypedArray, v příznak v RegExp, podpora pro změnu velikosti ArrayBuffer a zvětšení velikosti SharedArrayBuffer, konečné volání ve WebAssembly.

Další změna, která v nové verzi vyniká, je ta byl navržen mechanismus experimentálního modelu povolení že umožňuje omezit přístup k určitým zdrojům během provádění. Podpora modelu oprávnění je povolena zadáním příznaku "--experimentální-povolení" když běžíš.

Kromě toho je v Node.js 20.0 zvýrazněno, že ovladače pro moduly ECMAScript Externí (ESM) nabíjené prostřednictvím opce „–experimentální nakladač“ nyní běží na samostatném vlákně izolovaném od hlavního vlákna, což eliminuje průnik kódu aplikace a načtených modulů ESM. Podobně jako v prohlížečích nyní metoda import.meta.resolve() běží synchronně, když je volána z aplikace. V jedné z nadcházejících větví Node.js se plánuje přesunutí podpory zatížení ESM do kategorie stabilních funkcí.

To je také zdůrazněno byl vytvořen výkonnostní tým oddělené než, v přípravě na novou pobočku, jak to fungovalo na urychlení různých runtime komponent, včetně analýzy URL, fetch() a EventTarget. Například inicializační režie EventTarget byla snížena na polovinu, výkon metody URL.canParse() byl výrazně vylepšen a účinnost časovačů byla zlepšena. Balíček navíc obsahuje vydání vysoce výkonného analyzátoru URL: Ada 2.0, napsaného v C++.

Na druhou stranu je zdůrazněno, že pokračoval vývoj experimentální funkce doručovat aplikace ve formě jednoho spustitelného souboru (SEA, jediné spustitelné aplikace). Vytvoření spustitelného souboru nyní vyžaduje nahrazení objektu BLOB generovaného z konfiguračního souboru JSON (místo nahrazení souboru JavaScript).

Z další změny které vyčnívají z nové verze:

  • V počáteční implementaci byly navrženy možnosti pro omezení přístupu pro zápis (–allow-fs-write) a čtení (–allow-fs-read) do určitých částí FS, podřízené procesy (–allow-child-process), doplňky ( - -no-addons) a vlákna (–allow-worker).
  • Modul node:test (test_runner), určený k vytváření a spouštění testů JavaScriptu, které vracejí výsledky ve formátu Test Anything Protocol (TAP), byl přesunut do stable .

    Vylepšená kompatibilita rozhraní Web Crypto API s implementacemi z jiných projektů.
    Přidána oficiální podpora pro Windows na systémech ARM64.

  • Pokračující podpora pro rozšíření WebAssembly System Interface (WASI) pro vytváření samostatných aplikací WebAssembly. Odstraněna potřeba zadat speciální příznak příkazového řádku pro povolení podpory WASI.

Nakonec sPokud máte zájem dozvědět se o tom více, můžete zkontrolovat podrobnosti v následující odkaz.

Node.js 20.x bude podporován do 30. dubna 2026. Starší větev Node.js LTS 18.x bude podporována do dubna 2025 a starší větev LTS 16.x do září 2023.

Jak nainstalovat Node.JS na Linux?

Pro ty, kteří mají zájem o možnost instalace této nové verze Node.JS, by měli vědět, že proces je poměrně jednoduchý, stačí Musí otevřít terminál v systému a v něm budou zadávat jeden z následujících příkazů, v závislosti na vaší distribuci.

V případě těch, kteří jsou uživateli D.ebian, Ubuntu a deriváty, prostě musí napsat následující:

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

Zatímco pro ty, kteří jsou uživateli Arch Linux, Manjaro, Arco Linux nebo jakýkoli jiný derivát Arch:

sudo pacman -S nodejs npm

Pro ty, kteří používají Fedora, RHEL, Centos a deriváty:

sudo dnf -i nodejs npm

Konečně další z metod instalace Node.js je z balíčků Snap a k tomu stačí provést následující příkaz:

sudo snap install node --classic

Přidat jako preferovaný zdroj