{"id":99981,"date":"2021-04-21T16:22:48","date_gmt":"2021-04-21T14:22:48","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/vypusk-servernoj-javascript-platformy-node-js-16-0"},"modified":"2021-04-21T16:22:48","modified_gmt":"2021-04-21T14:22:48","slug":"vypusk-servernoj-javascript-platformy-node-js-16-0","status":"publish","type":"post","link":"https:\/\/prohoster.info\/da\/blog\/news\/vypusk-servernoj-javascript-platformy-node-js-16-0","title":{"rendered":"Udgivelse af server JavaScript-platformen Node.js 16.0","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Node.js 16.0 er blevet udgivet, en platform til udf\u00f8relse af netv\u00e6rksapplikationer i JavaScript. Node.js 16.0 er klassificeret som en version med langsigtet support, men denne status vil f\u00f8rst blive tildelt i oktober efter stabilisering. Supporten for Node.js 16.0 vil vare indtil april 2023. Supporten af den tidligere LTS-version Node.js 14.0 forts\u00e6tter indtil april 2023, mens den f\u00f8r det, LTS-version 12.0, underst\u00f8ttes indtil april 2022. St\u00f8tten til LTS-version 10.0 oph\u00f8rer om 10 dage.        <\/p>\n<p>Hovedforbedringer:  <\/p>\n<ul>\n<li class=\"l\"> V8-motoren er opdateret til version 9.0 (i Node.js 15 blev version 8.6 brugt), hvilket har gjort det muligt at implementere funktioner som egenskaben 'indices' til regul\u00e6re udtryk (som inkluderer et array med start- og slutpositionerne for matchgrupper), metoden Atomics.waitAsync (den asynkrone version af Atomics.wait) og underst\u00f8ttelse af brug af n\u00f8gleordet await i topniveau-moduler. Funktionsopkald er blevet hurtigere, n\u00e5r antallet af de videregivne argumenter ikke svarer til de definerede parametre i funktionen.\n<li class=\"l\"> API'en Timers Promises er stabiliseret, hvilket giver et alternativt s\u00e6t funktioner til arbejde med timere, der returnerer Promise-objekter, hvilket g\u00f8r det muligt at undg\u00e5 brugen af util.promisify(). import { setTimeout } from 'timers\/promises'; async function run() { await setTimeout(5000); console.log('Hello, World!'); } run();\n<li class=\"l\"> En eksperimentel implementering af API Web Crypto er tilf\u00f8jet, designet til at udf\u00f8re grundl\u00e6ggende kryptografiske operationer p\u00e5 siden af webapplikationer, s\u00e5som h\u00e5ndtering af kryptografiske hashes, generering og verifikation af digitale signaturer, kodning og dekodning af data ved hj\u00e6lp af forskellige krypteringsmetoder, samt generering af kryptografisk sikre tilf\u00e6ldige tal. API'et inkluderer ogs\u00e5 funktioner til n\u00f8glegenerering og -h\u00e5ndtering.\n<li class=\"l\"> N-API (API til udvikling af udvidelser) er opdateret til version 8.\n<li class=\"l\"> Overgangen til den nye version af pakkeadministratoren NPM 7.10 er gennemf\u00f8rt.\n<li class=\"l\"> Implementeringen af klassen AbortController er blevet stabiliseret, som er baseret p\u00e5 Web API AbortController og g\u00f8r det muligt at annullere signaler i udvalgte API'er baseret p\u00e5 Promise.\n<li class=\"l\"> Underst\u00f8ttelsen af tredje version af Source Map-formatet, der bruges til at matche genererede, behandlede eller pakkede moduler med den originale kildekode, er blevet stabiliseret.\n<li class=\"l\"> For at sikre kompatibilitet med for\u00e6ldede Web API'er er metoderne buffer.atob(data) og buffer.btoa(data) blevet tilf\u00f8jet.\n<li class=\"l\"> Produktionen af samlinger til de nye Apple-enheder med ARM M1-chip er begyndt.\n<li class=\"l\"> P\u00e5 Linux-platformen er kravene til compiler-versionen h\u00e6vet til GCC 8.3.    <\/ul>\n<p>Vi minder om, at Node.js-platformen kan bruges b\u00e5de til serverh\u00e5ndtering af webapplikationer samt til udvikling af almindelige klient- og serverbaserede netv\u00e6rksprogrammer. For at udvide applikationernes funktionalitet er der udarbejdet et stort bibliotek af moduler, hvor man kan finde moduler med implementering.  <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/da\/server\/\"   title=\"servere\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"1573\">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>Det skal n\u00e6vnes, at Deno, grundlagt af skaberen af Node.js for at udvikle den nye generation af Deno-platformen, har modtaget 4,9 millioner dollars i investering. Deno minder om Node.js i sin funktion, men fors\u00f8ger at rette de konceptuelle fejl beg\u00e5et i Node.js-arkitekturen og give brugerne et mere sikkert milj\u00f8. Det bem\u00e6rkes, at virksomhedens l\u00f8sninger vil v\u00e6re bygget p\u00e5 fuldt \u00e5bne produkter, og modellen Open Core med separate betalte funktioner regnes som uacceptabel for Deno-platformen.<br \/>\n<br \/>Kilde: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=54998\">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 16.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 16.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 16.0 \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 2023 \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 14.0 \u043f\u0440\u043e\u0434\u043b\u0438\u0442\u0441\u044f \u0434\u043e \u0430\u043f\u0440\u0435\u043b\u044f 2023 \u0433\u043e\u0434\u0430, \u0430 \u043f\u043e\u0437\u0430\u043f\u0440\u043e\u0448\u043b\u043e\u0439 LTS-\u0432\u0435\u0442\u043a\u0438 12.0 [&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-99981","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 16.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\/vypusk-servernoj-javascript-platformy-node-js-16-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\u0412\u044b\u043f\u0443\u0441\u043a \u0441\u0435\u0440\u0432\u0435\u0440\u043d\u043e\u0439 JavaScript-\u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b Node.js 16.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 16.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\/vypusk-servernoj-javascript-platformy-node-js-16-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=\"2021-04-21T14:22:48+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2021-04-21T14:22:48+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\udd47Udgivelse af serverplatformen for JavaScript, Node.js 16.0 | ProHoster","description":"Node.js 16.0 er blevet udgivet, en platform til udf\u00f8relse af netv\u00e6rksapplikationer skrevet i JavaScript.","canonical_url":"https:\/\/prohoster.info\/da\/blog\/news\/vypusk-servernoj-javascript-platformy-node-js-16-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\u0412\u044b\u043f\u0443\u0441\u043a \u0441\u0435\u0440\u0432\u0435\u0440\u043d\u043e\u0439 JavaScript-\u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b Node.js 16.0 | ProHoster","og:description":"\u0421\u043e\u0441\u0442\u043e\u044f\u043b\u0441\u044f \u0440\u0435\u043b\u0438\u0437 Node.js 16.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\/vypusk-servernoj-javascript-platformy-node-js-16-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":"2021-04-21T14:22:48+00:00","article:modified_time":"2021-04-21T14:22:48+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"99981","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":null,"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":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-04-21 14:41:15","updated":"2026-02-09 16:50:50","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\/99981","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=99981"}],"version-history":[{"count":1,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts\/99981\/revisions"}],"predecessor-version":[{"id":158817,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/posts\/99981\/revisions\/158817"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/media?parent=99981"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/categories?post=99981"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/da\/wp-json\/wp\/v2\/tags?post=99981"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}