{"id":23168,"date":"2023-10-19T19:52:15","date_gmt":"2023-10-19T17:52:15","guid":{"rendered":"https:\/\/www.nycwebdesign.eu\/webdesign\/node-js-21-tutte-le-novita\/"},"modified":"2023-10-19T19:52:15","modified_gmt":"2023-10-19T17:52:15","slug":"node-js-21-tutte-le-novita","status":"publish","type":"post","link":"https:\/\/www.nycwebdesign.eu\/webdesign\/node-js-21-tutte-le-novita\/","title":{"rendered":"Node.js 21: tutte le novit\u00e0"},"content":{"rendered":"<p> <br \/>\n<\/p>\n<div>\n<p>Gli sviluppatori del noto ambiente di runtime basato su <a href=\"https:\/\/www.html.it\/guide\/guida-javascript-di-base\/\" target=\"_blank\" rel=\"noopener\">JavaScript<\/a> hanno reso disponibile <strong>Node.js 21<\/strong>. La nuova versione del progetto non sostituisce quella precedente che, al contrario, \u00e8 destinata a diventare la release LTS (<em>Long Term Support<\/em>) di riferimento per gli sviluppatori. Per quanto riguarda l&#8217;ultimo aggiornamento, le novit\u00e0 comprendono un&#8217;API fetch stabile, un test runner aggiornato. Presente anche il supporto sperimentale per un client WebSocket e un flag con cui impostare i file <code>.js<\/code> di default come moduli ECMAScript e non CommonJS.<\/p>\n<h2 id=\"l-api-fetch\">L&#8217;API fetch<\/h2>\n<p>L&#8217;<strong>API fetch<\/strong>, probabilmente la feature pi\u00f9 interessante di questo rilascio, \u00e8 una soluzione impiegata diffusamente nelle moderne Web application per la gestione delle richieste asincrone di dati tramite promise JavaScript. La sua implementazione in Node.js ha subito dei ritardi ma con la versione 21 viene recuperato un bel po&#8217; di terreno rispetto ad un competitor come <strong>Deno<\/strong> che supporta l&#8217;API fetch gi\u00e0 da qualche tempo. <\/p>\n<p>In realt\u00e0 tale interfaccia era utilizzabile <a href=\"https:\/\/www.html.it\/guide\/guida-nodejs\/\" target=\"_blank\" rel=\"noopener\">Node.js<\/a> gi\u00e0 a partire dalla versione 18, anche tramite un modulo apposito. Questa volta per\u00f2 essa fa parte del core del runtime ed \u00e8 da considerarsi stabile.<\/p>\n<h2 id=\"websocket-ed-esm\">WebSocket ed ESM<\/h2>\n<p>Come anticipato, in Node.js 21 viene introdotto anche il supporto sperimentale per un <strong>client WebSocket<\/strong>. Niente di nuovo invece per quanto riguarda il lato server per il quale ci si dovr\u00e0 ancora rivolgere ad un modulo. Il client \u00e8 poi in fase di test e anche in questo caso per la fase di produzione sar\u00e0 meglio attendere e sfruttare un modulo.<\/p>\n<p>Interessante l&#8217;inizio della transizione verso <strong>ECMAScript<\/strong> come riferimento predefinito per i moduli. Ad oggi i file con <code>.cjs<\/code> e <code>.js<\/code> vengono manipolati come CommonJS, il nuovo flag cambia questo approccio basandosi su ECMAScript ma \u00e8 ancora in fase sperimentale. Da segnalare inoltre che l&#8217;<strong>engine V8<\/strong> \u00e8 stato aggiornato alla release 11.8.<\/p>\n<h2 id=\"node-js-20-diventa-lts\">Node.js 20 diventa LTS<\/h2>\n<p>Gli sviluppatori di Node.js rilasciano una nuova versione ogni 6 mesi. Quelle con numero pari diventano diventano LTS, ci\u00f2 non \u00e8 possibile con quelle associate a numeri dispari. A tal proposito si ricorda che le release con numeri dispari servono per garantire un accesso immediato alle nuove funzionalit\u00e0 del progetto prima dell&#8217;arrivo di un altro rilascio di lungo periodo.<\/p>\n<p>Node.js 20 introdusse ad esempio un <strong>Test Runner<\/strong> integrato nel core, e migliorato nella versione 21, anche se non tutte le sue funzionalit\u00e0 possono essere considerate stabili.<\/p>\n<div class=\"partial-newsletter\">\n<p>        <!-- newsletter first step --><\/p>\n<div id=\"newsletter_div\" class=\"bro--disabled newsletter__pass-a\">\n<p>Se vuoi aggiornamenti su su questo argomento  inserisci la tua email nel box qui sotto:<\/p>\n<p> <!-- <em>Node.js 21: tutte le novit&agrave;<\/em> --><\/p>\n<div class=\"newsletter__disclaimer\">\n<p>Compilando il presente form acconsento a ricevere le informazioni<br \/>\n                    relative ai servizi di cui alla presente pagina ai sensi<br \/>\n                    dell&#8217;<a href=\"https:\/\/www.html.it\/privacy-policy\" target=\"_blank\" rel=\"noopener\">informativa sulla privacy<\/a>.<\/p>\n<\/div><\/div>\n<p>        <!-- newsletter second step --><\/p>\n<p>        <!-- newsletter loader --><\/p>\n<p>        <!-- newsletter notice --><\/p><\/div>\n<p><span class=\"bm_post\" style=\"display:none\" data-domain=\"html.it\" data-author=\"Claudio Garau\" data-alias=\"Claudio Garau\" data-tipologia=\"edit\" data-custom=\"\" data-path=\"https:\/\/www.html.it\/magazine\/node-js-21-tutte-le-novita\/\" data-postid=\"471596\" data-programs=\"\" data-subjects=\"\"\/><\/p><\/div>\n<p><br \/>\n<br \/><a href=\"https:\/\/www.html.it\/magazine\/node-js-21-tutte-le-novita\/\">Source link <\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Gli sviluppatori del noto ambiente di runtime basato su JavaScript hanno reso disponibile Node.js 21. La nuova versione del progetto non sostituisce quella precedente che, al contrario, \u00e8 destinata a diventare la release LTS (Long Term Support) di riferimento per gli sviluppatori. Per quanto riguarda l&#8217;ultimo aggiornamento, le novit\u00e0 comprendono un&#8217;API fetch stabile, un test&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_s2mail":""},"categories":[37],"tags":[],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v19.13 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Node.js 21: tutte le novit\u00e0 - AGENZIA WEB Italia<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.nycwebdesign.eu\/webdesign\/node-js-21-tutte-le-novita\/\" \/>\n<meta property=\"og:locale\" content=\"it_IT\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Node.js 21: tutte le novit\u00e0 - AGENZIA WEB Italia\" \/>\n<meta property=\"og:description\" content=\"Gli sviluppatori del noto ambiente di runtime basato su JavaScript hanno reso disponibile Node.js 21. La nuova versione del progetto non sostituisce quella precedente che, al contrario, \u00e8 destinata a diventare la release LTS (Long Term Support) di riferimento per gli sviluppatori. Per quanto riguarda l&#8217;ultimo aggiornamento, le novit\u00e0 comprendono un&#8217;API fetch stabile, un test...\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.nycwebdesign.eu\/webdesign\/node-js-21-tutte-le-novita\/\" \/>\n<meta property=\"og:site_name\" content=\"AGENZIA WEB Italia\" \/>\n<meta property=\"article:published_time\" content=\"2023-10-19T17:52:15+00:00\" \/>\n<meta name=\"author\" content=\"admin\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Scritto da\" \/>\n\t<meta name=\"twitter:data1\" content=\"admin\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tempo di lettura stimato\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minuti\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/node-js-21-tutte-le-novita\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/node-js-21-tutte-le-novita\/\"},\"author\":{\"name\":\"admin\",\"@id\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/#\/schema\/person\/c0748e23499fac2fd73b79d1379fdf42\"},\"headline\":\"Node.js 21: tutte le novit\u00e0\",\"datePublished\":\"2023-10-19T17:52:15+00:00\",\"dateModified\":\"2023-10-19T17:52:15+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/node-js-21-tutte-le-novita\/\"},\"wordCount\":422,\"publisher\":{\"@id\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/#organization\"},\"articleSection\":[\"News\"],\"inLanguage\":\"it-IT\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/node-js-21-tutte-le-novita\/\",\"url\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/node-js-21-tutte-le-novita\/\",\"name\":\"Node.js 21: tutte le novit\u00e0 - AGENZIA WEB Italia\",\"isPartOf\":{\"@id\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/#website\"},\"datePublished\":\"2023-10-19T17:52:15+00:00\",\"dateModified\":\"2023-10-19T17:52:15+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/node-js-21-tutte-le-novita\/#breadcrumb\"},\"inLanguage\":\"it-IT\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.nycwebdesign.eu\/webdesign\/node-js-21-tutte-le-novita\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/node-js-21-tutte-le-novita\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Node.js 21: tutte le novit\u00e0\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/#website\",\"url\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/\",\"name\":\"AGENZIA WEB Italia\",\"description\":\"Web design Web agency Italia\",\"publisher\":{\"@id\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"it-IT\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/#organization\",\"name\":\"Multimedia Web\",\"url\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"it-IT\",\"@id\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/wp-content\/uploads\/2016\/05\/multimediaweb1.png\",\"contentUrl\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/wp-content\/uploads\/2016\/05\/multimediaweb1.png\",\"width\":200,\"height\":57,\"caption\":\"Multimedia Web\"},\"image\":{\"@id\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/#\/schema\/person\/c0748e23499fac2fd73b79d1379fdf42\",\"name\":\"admin\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"it-IT\",\"@id\":\"https:\/\/www.nycwebdesign.eu\/webdesign\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/991cd68bbfd6f946517378a63fc3a1f7?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/991cd68bbfd6f946517378a63fc3a1f7?s=96&d=mm&r=g\",\"caption\":\"admin\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Node.js 21: tutte le novit\u00e0 - AGENZIA WEB Italia","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.nycwebdesign.eu\/webdesign\/node-js-21-tutte-le-novita\/","og_locale":"it_IT","og_type":"article","og_title":"Node.js 21: tutte le novit\u00e0 - AGENZIA WEB Italia","og_description":"Gli sviluppatori del noto ambiente di runtime basato su JavaScript hanno reso disponibile Node.js 21. La nuova versione del progetto non sostituisce quella precedente che, al contrario, \u00e8 destinata a diventare la release LTS (Long Term Support) di riferimento per gli sviluppatori. Per quanto riguarda l&#8217;ultimo aggiornamento, le novit\u00e0 comprendono un&#8217;API fetch stabile, un test...","og_url":"https:\/\/www.nycwebdesign.eu\/webdesign\/node-js-21-tutte-le-novita\/","og_site_name":"AGENZIA WEB Italia","article_published_time":"2023-10-19T17:52:15+00:00","author":"admin","twitter_card":"summary_large_image","twitter_misc":{"Scritto da":"admin","Tempo di lettura stimato":"2 minuti"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.nycwebdesign.eu\/webdesign\/node-js-21-tutte-le-novita\/#article","isPartOf":{"@id":"https:\/\/www.nycwebdesign.eu\/webdesign\/node-js-21-tutte-le-novita\/"},"author":{"name":"admin","@id":"https:\/\/www.nycwebdesign.eu\/webdesign\/#\/schema\/person\/c0748e23499fac2fd73b79d1379fdf42"},"headline":"Node.js 21: tutte le novit\u00e0","datePublished":"2023-10-19T17:52:15+00:00","dateModified":"2023-10-19T17:52:15+00:00","mainEntityOfPage":{"@id":"https:\/\/www.nycwebdesign.eu\/webdesign\/node-js-21-tutte-le-novita\/"},"wordCount":422,"publisher":{"@id":"https:\/\/www.nycwebdesign.eu\/webdesign\/#organization"},"articleSection":["News"],"inLanguage":"it-IT"},{"@type":"WebPage","@id":"https:\/\/www.nycwebdesign.eu\/webdesign\/node-js-21-tutte-le-novita\/","url":"https:\/\/www.nycwebdesign.eu\/webdesign\/node-js-21-tutte-le-novita\/","name":"Node.js 21: tutte le novit\u00e0 - AGENZIA WEB Italia","isPartOf":{"@id":"https:\/\/www.nycwebdesign.eu\/webdesign\/#website"},"datePublished":"2023-10-19T17:52:15+00:00","dateModified":"2023-10-19T17:52:15+00:00","breadcrumb":{"@id":"https:\/\/www.nycwebdesign.eu\/webdesign\/node-js-21-tutte-le-novita\/#breadcrumb"},"inLanguage":"it-IT","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.nycwebdesign.eu\/webdesign\/node-js-21-tutte-le-novita\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.nycwebdesign.eu\/webdesign\/node-js-21-tutte-le-novita\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.nycwebdesign.eu\/webdesign\/"},{"@type":"ListItem","position":2,"name":"Node.js 21: tutte le novit\u00e0"}]},{"@type":"WebSite","@id":"https:\/\/www.nycwebdesign.eu\/webdesign\/#website","url":"https:\/\/www.nycwebdesign.eu\/webdesign\/","name":"AGENZIA WEB Italia","description":"Web design Web agency Italia","publisher":{"@id":"https:\/\/www.nycwebdesign.eu\/webdesign\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.nycwebdesign.eu\/webdesign\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"it-IT"},{"@type":"Organization","@id":"https:\/\/www.nycwebdesign.eu\/webdesign\/#organization","name":"Multimedia Web","url":"https:\/\/www.nycwebdesign.eu\/webdesign\/","logo":{"@type":"ImageObject","inLanguage":"it-IT","@id":"https:\/\/www.nycwebdesign.eu\/webdesign\/#\/schema\/logo\/image\/","url":"https:\/\/www.nycwebdesign.eu\/webdesign\/wp-content\/uploads\/2016\/05\/multimediaweb1.png","contentUrl":"https:\/\/www.nycwebdesign.eu\/webdesign\/wp-content\/uploads\/2016\/05\/multimediaweb1.png","width":200,"height":57,"caption":"Multimedia Web"},"image":{"@id":"https:\/\/www.nycwebdesign.eu\/webdesign\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/www.nycwebdesign.eu\/webdesign\/#\/schema\/person\/c0748e23499fac2fd73b79d1379fdf42","name":"admin","image":{"@type":"ImageObject","inLanguage":"it-IT","@id":"https:\/\/www.nycwebdesign.eu\/webdesign\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/991cd68bbfd6f946517378a63fc3a1f7?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/991cd68bbfd6f946517378a63fc3a1f7?s=96&d=mm&r=g","caption":"admin"}}]}},"_links":{"self":[{"href":"https:\/\/www.nycwebdesign.eu\/webdesign\/wp-json\/wp\/v2\/posts\/23168"}],"collection":[{"href":"https:\/\/www.nycwebdesign.eu\/webdesign\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.nycwebdesign.eu\/webdesign\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.nycwebdesign.eu\/webdesign\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.nycwebdesign.eu\/webdesign\/wp-json\/wp\/v2\/comments?post=23168"}],"version-history":[{"count":0,"href":"https:\/\/www.nycwebdesign.eu\/webdesign\/wp-json\/wp\/v2\/posts\/23168\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.nycwebdesign.eu\/webdesign\/wp-json\/wp\/v2\/media?parent=23168"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.nycwebdesign.eu\/webdesign\/wp-json\/wp\/v2\/categories?post=23168"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.nycwebdesign.eu\/webdesign\/wp-json\/wp\/v2\/tags?post=23168"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}