{"id":103835,"date":"2022-04-21T15:36:45","date_gmt":"2022-04-21T13:36:45","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/dostupna-servernaya-javascript-platforma-node-js-18-0"},"modified":"2022-04-21T15:36:45","modified_gmt":"2022-04-21T13:36:45","slug":"dostupna-servernaya-javascript-platforma-node-js-18-0","status":"publish","type":"post","link":"https:\/\/prohoster.info\/da\/blog\/news\/dostupna-servernaya-javascript-platforma-node-js-18-0","title":{"rendered":"Server JavaScript-platformen Node.js 18.0 er tilg\u00e6ngelig.","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Node.js 18.0 er blevet frigivet, en platform til k\u00f8rsel af netv\u00e6rksapplikationer skrevet i JavaScript. Node.js 18.0 tilh\u00f8rer de versioner med langtidssupport, men denne status vil kun blive tildelt i oktober efter stabilisering. St\u00f8tten til Node.js 18.x vil vare indtil april 2025. Supporten for den tidligere LTS-version Node.js 16.x vil forts\u00e6tte indtil april 2024, og den for den \u00e6ldre LTS-version 14.x vil vare indtil april 2023. Supporten for LTS-versionen 12.x vil oph\u00f8re den 30. april, mens den midlertidige version Node.js 17.x vil blive afbrudt den 1. juni.     <\/p>\n<p>Hovedforbedringer:  <\/p>\n<ul>\n<li class=\"l\"> V8-motoren er blevet opdateret til version 10.1, som anvendes i Chromium 101. I forhold til udgivelsen af Node.js 17.9.0 er der tilf\u00f8jet st\u00f8tte til nye funktioner som findLast og findLastIndex metoder til at finde elementer fra slutningen af et array, samt funktionen Intl.supportedValuesOf. API'en Intl.Locale er forbedret. Initialiseringen af klassefelter og private metoder er blevet hurtigere.\n<li class=\"l\"> Den eksperimentelle API fetch() er aktiveret som standard, og den er designet til at indl\u00e6se ressourcer over nettet. Implementeringen er baseret p\u00e5 koden fra HTTP\/1.1-klienten undici og er t\u00e6t p\u00e5 den tilsvarende API, der tilbydes i browsere. Der er ogs\u00e5 support for gr\u00e6nsefladerne FormData, Headers, Request og Response til manipulation af HTTP-headers i anmodninger og svar. const res = await fetch('https:\/\/nodejs.org\/api\/documentation.json'); if (res.ok) { const data = await res.json(); console.log(data); }\n<li class=\"l\"> En eksperimentel implementering af API'en Web Streams er blevet tilf\u00f8jet, som giver adgang til datastreams hentet over nettet. API'en giver mulighed for at tilf\u00f8je egne h\u00e5ndterere til at arbejde med dataene efterh\u00e5nden som informationen str\u00f8mmer ind, uden at vente p\u00e5 at hele filen er downloadet. I Node.js er nu objekter s\u00e5som ReadableStream*, TransformStream*, WritableStream*, TextEncoderStream, TextDecoderStream, CompressionStream og DecompressionStream tilg\u00e6ngelige.\n<li class=\"l\"> API'en Blob er blevet inkluderet som stabil, hvilket tillader indkapsling af u\u00e6ndrede r\u00e5data til sikker brug p\u00e5 tv\u00e6rs af forskellige arbejdsgange.\n<li class=\"l\"> Den stabile API BroadcastChannel er blevet oversat, hvilket muligg\u00f8r asynkron kommunikation i formatet '\u00e9n afsender - mange modtagere'.\n<li class=\"l\"> En eksperimentel node:test modul er blevet tilf\u00f8jet til at oprette og k\u00f8re tests i JavaScript, der returnerer resultater i TAP (Test Anything Protocol) format.\n<li class=\"l\"> F\u00e6rdige builds er blevet genereret til Red Hat Enterprise Linux (RHEL) 8 og andre distributioner baseret p\u00e5 Glibc 2.28+, herunder Debian 10 og Ubuntu 20.04, samt macOS 10.15+. P\u00e5 grund af problemer med opbygningen af V8-motoren er opbygningen af 32-bit builds til Windows midlertidigt stoppet.\n<li class=\"l\"> Der er tilf\u00f8jet en eksperimentel mulighed for at bygge en Node.js-k\u00f8rbar fil med brugerdefinerede komponenter, der initieres ved opstart. For at definere startkomponenterne er der tilf\u00f8jet en mulighed til konfigurationsscriptet &#171;--node-snapshot-main&#187;, for eksempel &#171;.\/configure --node-snapshot-main=marked.js; name node&#187;          <\/ul>\n<p>Node.js-platformen kan bruges til b\u00e5de server-side drift af webapplikationer og til at skabe almindelige klient- og serverbaserede netv\u00e6rksprogrammer. Der er forberedt en stor samling af moduler til at udvide funktionaliteten af applikationer til Node.js, hvor man kan finde moduler med implementeringer  <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/da\/server\/\"   title=\"servere\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"1641\">servere<\/a> og HTTP, SMTP, XMPP, DNS, FTP, IMAP, POP3 klienter, moduler til integration med forskellige web-rammer, WebSocket- og Ajax-h\u00e5ndterere, forbindelser til DBMS (MySQL, PostgreSQL, SQLite, MongoDB), templating-motorer, CSS-motorer, implementeringer af kryptografi-algoritmer og autorisationssystemer (OAuth), XML-parsere.    <\/p>\n<p> For the handling of a large number of parallel requests, Node.js utilizes an asynchronous code execution model based on event-driven, non-blocking I\/O and the definition of callback handlers. It supports multiplexing methods such as epoll, kqueue, \/dev\/poll, and select. The libuv library, which acts as a wrapper over libev in Unix systems and IOCP in Windows, is used for connection multiplexing. A thread pool is created using the libeio library, and for performing non-blocking DNS queries, c-ares is integrated. All blocking system calls are executed within the thread pool and then, similar to signal handlers, relay their results back via an unnamed pipe. JavaScript code execution is facilitated through the V8 engine developed by Google (Microsoft also develops a Node.js variant with the Chakra-Core engine).        <\/p>\n<p>I sin essence ligner Node.js p\u00e5 Perl AnyEvent, Ruby Event Machine, Python Twisted og implementeringen af events i Tcl, men begivenhedscyklen (event loop) i Node.js er skjult for udvikleren og minder om h\u00e5ndteringen af events i en webapplikation, der k\u00f8rer i en browser. N\u00e5r man skriver applikationer til Node.js, skal man tage h\u00f8jde for s\u00e6regenhederne ved begivenhedsorienteret programmering; for eksempel, i stedet for at udf\u00f8re 'var result = db.query('select..');' med ventetid p\u00e5 afslutningen og efterf\u00f8lgende behandling af resultaterne, anvender Node.js princippet for asynkron udf\u00f8relse, dvs. koden transformeres til 'db.query('select..', function (result) {behandling af resultat});', hvor kontrol straks overg\u00e5r til den videre kode, og resultatet af foresp\u00f8rgslen behandles, efterh\u00e5nden som dataene kommer ind.      <\/p>\n<p>Kilde: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=57054\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0421\u043e\u0441\u0442\u043e\u044f\u043b\u0441\u044f \u0440\u0435\u043b\u0438\u0437 Node.js 18.0, \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b \u0434\u043b\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u0441\u0435\u0442\u0435\u0432\u044b\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 JavaScript. Node.js 18.0 \u043e\u0442\u043d\u0435\u0441\u0451\u043d \u043a \u0432\u0435\u0442\u043a\u0430\u043c \u0441 \u0434\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u043c \u0441\u0440\u043e\u043a\u043e\u043c \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438, \u043d\u043e \u0434\u0430\u043d\u043d\u044b\u0439 \u0441\u0442\u0430\u0442\u0443\u0441 \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u0438\u0441\u0432\u043e\u0435\u043d \u0442\u043e\u043b\u044c\u043a\u043e \u0432 \u043e\u043a\u0442\u044f\u0431\u0440\u0435, \u043f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u044f \u0441\u0442\u0430\u0431\u0438\u043b\u0438\u0437\u0430\u0446\u0438\u0438. \u041f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 Node.js 18.x \u0431\u0443\u0434\u0435\u0442 \u043e\u0441\u0443\u0449\u0435\u0441\u0442\u0432\u043b\u044f\u0442\u044c\u0441\u044f \u0434\u043e \u0430\u043f\u0440\u0435\u043b\u044f 2025 \u0433\u043e\u0434\u0430. \u0421\u043e\u043f\u0440\u043e\u0432\u043e\u0436\u0434\u0435\u043d\u0438\u0435 \u043f\u0440\u043e\u0448\u043b\u043e\u0439 LTS-\u0432\u0435\u0442\u043a\u0438 Node.js 16.x \u043f\u0440\u043e\u0434\u043b\u0438\u0442\u0441\u044f \u0434\u043e \u0430\u043f\u0440\u0435\u043b\u044f 2024 \u0433\u043e\u0434\u0430, \u0430 \u043f\u043e\u0437\u0430\u043f\u0440\u043e\u0448\u043b\u043e\u0439 LTS-\u0432\u0435\u0442\u043a\u0438 14.x [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-103835","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0421\u043e\u0441\u0442\u043e\u044f\u043b\u0441\u044f \u0440\u0435\u043b\u0438\u0437 Node.js 18.0, \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b \u0434\u043b\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u0441\u0435\u0442\u0435\u0432\u044b\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 JavaScript.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/da\/blog\/news\/dostupna-servernaya-javascript-platforma-node-js-18-0\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"da_DK\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0414\u043e\u0441\u0442\u0443\u043f\u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u043d\u0430\u044f JavaScript-\u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0430 Node.js 18.0 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0421\u043e\u0441\u0442\u043e\u044f\u043b\u0441\u044f \u0440\u0435\u043b\u0438\u0437 Node.js 18.0, \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b \u0434\u043b\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u0441\u0435\u0442\u0435\u0432\u044b\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 JavaScript.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/da\/blog\/news\/dostupna-servernaya-javascript-platforma-node-js-18-0\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2022-04-21T13:36:45+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2022-04-21T13:36:45+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47JavaScript-serverplatformen Node.js 18.0 er tilg\u00e6ngelig | ProHoster","description":"Node.js 18.0 er blevet udgivet, en platform til at k\u00f8re netv\u00e6rksapplikationer skrevet i JavaScript.","canonical_url":"https:\/\/prohoster.info\/da\/blog\/news\/dostupna-servernaya-javascript-platforma-node-js-18-0","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"da_DK","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0414\u043e\u0441\u0442\u0443\u043f\u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u043d\u0430\u044f JavaScript-\u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0430 Node.js 18.0 | ProHoster","og:description":"\u0421\u043e\u0441\u0442\u043e\u044f\u043b\u0441\u044f \u0440\u0435\u043b\u0438\u0437 Node.js 18.0, \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b \u0434\u043b\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u0441\u0435\u0442\u0435\u0432\u044b\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 JavaScript.","og:url":"https:\/\/prohoster.info\/da\/blog\/news\/dostupna-servernaya-javascript-platforma-node-js-18-0","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2022-04-21T13:36:45+00:00","article:modified_time":"2022-04-21T13:36:45+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"103835","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-02-09 18:12:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2022-04-21 13:37:16","updated":"2026-02-09 18:12:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts\/103835","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/comments?post=103835"}],"version-history":[{"count":1,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts\/103835\/revisions"}],"predecessor-version":[{"id":158885,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts\/103835\/revisions\/158885"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/media?parent=103835"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/categories?post=103835"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/tags?post=103835"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}