{"id":120214,"date":"2024-10-17T13:09:19","date_gmt":"2024-10-17T11:09:19","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/opublikovana-platforma-node-js-23-0-s-nachalnoj-podderzhkoj-yazyka-typescript"},"modified":"2026-02-15T22:30:50","modified_gmt":"2026-02-15T20:30:50","slug":"opublikovana-platforma-node-js-23-0-s-nachalnoj-podderzhkoj-yazyka-typescript","status":"publish","type":"post","link":"https:\/\/prohoster.info\/ro\/blog\/news\/opublikovana-platforma-node-js-23-0-s-nachalnoj-podderzhkoj-yazyka-typescript","title":{"rendered":"A fost lansat\u0103 platforma Node.js 23.0 cu suport ini\u021bial pentru limbajul TypeScript.","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>A avut loc lansarea Node.js 23.0.0, o platform\u0103 pentru executarea aplica\u021biilor de re\u021bea \u00een limbajul JavaScript. Node.js 23.0 este clasificat drept ramur\u0103 intermediar\u0103, care va fi sus\u021binut\u0103 timp de 7 luni (p\u00e2n\u0103 \u00een iunie 2025). \u00cen zilele urm\u0103toare, se va finaliza stabilizarea ramurii Node.js 22, care va primi statutul LTS pe 29 octombrie \u0219i va fi sus\u021binut\u0103 p\u00e2n\u0103 \u00een aprilie 2027. Suportul pentru versiunile anterioare LTS Node.js 20.x \u0219i 18.x va continua p\u00e2n\u0103 \u00een aprilie 2026 \u0219i, respectiv, 2025.       <\/p>\n<p>\u00cembun\u0103t\u0103\u021biri principale:  <\/p>\n<ul>\n<li class=\"l\"> A fost ad\u0103ugat suport experimental pentru limbajul TypeScript, care permite definirea explicit\u0103 a tipurilor. Suportul se activeaz\u0103 prin op\u021biunile &#171;&#8212;experimental-strip-types&#187; \u0219i &#171;&#8212;experimental-transform-types&#187;. \u00cen cazul primei op\u021biuni, lucrul cu TypeScript se reduce la cur\u0103\u021barea defini\u021biilor de tip specifice acestui limbaj (verificarea tipurilor nu se efectueaz\u0103, codul este pur \u0219i simplu convertit \u00een JavaScript f\u0103r\u0103 tipuri). A doua op\u021biune transform\u0103 unele elemente de sintax\u0103 TypeScript \u00een cod JavaScript, cum ar fi enumer\u0103rile (enum) \u0219i spa\u021biile de nume (namespace).\n<li class=\"l\"> Este activat\u0103 \u00een mod implicit posibilitatea de a folosi apelul &#171;require()&#187; pentru a \u00eenc\u0103rca module JavaScript ESM (ECMAScript Modules) \u00een mod sincronic. Modulele ESM sunt utilizate \u00een browsere \u0219i \u00eenlocuiesc modulele CommonJS, specifice Node.js. Pentru a fi \u00eenc\u0103rcat prin &#171;require()&#187; \u00een Node.js, modulul ESM trebuie s\u0103 fie executat \u00eentr-un mod sincronic (f\u0103r\u0103 await la nivelul superior).\n<li class=\"l\"> Se asigur\u0103 detectarea automat\u0103 a modulelor ESM \u00een fi\u0219iere f\u0103r\u0103 extensie sau cu extensia &#171;.js&#187;. Anterior, aceste fi\u0219iere erau interpretate ca module CommonJS, dac\u0103 tipul lor nu era specificat \u00een mod explicit \u00een fi\u0219ierul package.json plasat \u00een acela\u0219i director (&#171;type&#187;: &#171;module&#187;). \u00cen noua versiune, pentru fi\u0219ierele al c\u0103ror tip nu este desemnat \u00een package.json, se face mai \u00eent\u00e2i o tentativ\u0103 de \u00eenc\u0103rcare ca modul CommonJS \u0219i, dac\u0103 aceasta e\u0219ueaz\u0103, ca modul ESM.\n<li class=\"l\"> A fost ad\u0103ugat\u0103 o implementare experimental\u0103 <a href=\"https:\/\/prohoster.info\/ro\/ssl-sertifikat\/rapidssl-wildcard\/\"  data-wpil-monitor-id=\"3321\">compatibil\u0103 cu browserele<\/a> API Web Storage, destinat stoc\u0103rii permanente (clasa localStorage) sau temporare (clasa sessionStorage) a datelor \u00een format cheie\/valoare. Pentru a activa suportul pentru Web Storage, este necesar\u0103 rularea cu flag-ul &#171;&#8212;experimental-webstorage&#187; \u0219i specificarea c\u0103ii c\u0103tre fi\u0219ierul de stocare prin flag-ul &#171;&#8212;localstorage-file&#187;.\n<li class=\"l\"> A fost ad\u0103ugat un API experimental SQLite pentru lucrul cu baze de date, folosind limbajul de interogare SQL \u0219i un stocaj bazat pe biblioteca SQLite. Pe l\u00e2ng\u0103 stocarea bazei de date \u00eentr-un fi\u0219ier pe disc, aceasta poate fi, de asemenea, plasat\u0103 \u00een memorie, specific\u00e2nd numele fi\u0219ierului &#171;:memory:&#187;. API-ul Web Storage men\u021bionat mai sus este, de asemenea, implementat deasupra SQLite, ceea ce a condus la includerea SQLite \u00een lista de dependen\u021be pentru Node.js.\n<li class=\"l\"> A fost declarat\u0103 stabil\u0103 comanda &#171;node &#8212;run&#187;, destinat\u0103 pentru rularea scripturilor definite \u00een fi\u0219ierul package.json.\n<li class=\"l\"> A fost implementat suport op\u021bional pentru caching-ul codului compilat pe disc pentru a accelera semnificativ lansarea modulelor. Activarea caching-ului se face prin variabila de mediu NODE_COMPILE_CACHE. Func\u021bionalitatea sa seam\u0103n\u0103 cu pachetul v8-compile-cache, dar se distinge printr-o performan\u021b\u0103 mai ridicat\u0103 \u0219i suport pentru module ESM.\n<li class=\"l\"> A fost efectuat\u0103 o optimizare a obiectului Buffer, care a permis cre\u0219terea semnificativ\u0103 a performan\u021bei metodelor Buffer.copy() \u0219i Buffer.write().\n<li class=\"l\"> A fost \u00eembun\u0103t\u0103\u021bit\u0103 performan\u021ba modulului node:fs, \u00een care s-a redus de asemenea num\u0103rul apelurilor de cod C++ \u00een timpul execut\u0103rii.\n<li class=\"l\"> Motorul V8 a fost actualizat la versiunea 12.9, utilizat\u0103 \u00een Chromium 129.\n<li class=\"l\"> A fost eliminat suportul pentru sistemele de 32 de bi\u021bi cu sistemul de operare Windows.\n<li class=\"l\"> Din cauza implement\u0103rii \u00een Node.js \u0219i motorul V8 a caracteristicilor definite \u00een standardul C++20, cerin\u021bele pentru versiunea compilatorului GCC au fost ridicate. Pentru a compila Node.js este acum necesar\u0103 o versiune minim\u0103 de GCC 12.      <\/ul>\n<p>Platforma Node.js poate fi utilizat\u0103 at\u00e2t pentru suportul serverului \u00een func\u021bionarea aplica\u021biilor web, c\u00e2t \u0219i pentru crearea de aplica\u021bii client \u0219i server de re\u021bea obi\u0219nuite. Pentru a extinde func\u021bionalitatea aplica\u021biilor pentru Node.js a fost preg\u0103tit\u0103 o mare colec\u021bie de module, \u00een care se pot g\u0103si module cu implement\u0103ri  <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/ro\/server\/\"   title=\"servere\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"1737\">servere<\/a> \u0219i clien\u021bi HTTP, SMTP, XMPP, DNS, FTP, IMAP, POP3, module pentru integrarea cu diverse framework-uri web, manejere WebSocket \u0219i Ajax, convertoare pentru baze de date (MySQL, PostgreSQL, SQLite, MongoDB), generatoare de \u0219abloane, motoare CSS, implement\u0103ri de algoritmi criptografici \u0219i sisteme de autorizare (OAuth), parsere XML.    <\/p>\n<p> Pentru a gestiona un num\u0103r mare de cereri paralele, Node.js utilizeaz\u0103 un model asincron de execu\u021bie a codului, bazat pe procesarea evenimentelor \u00een mod non-blocant \u0219i definirea callback-urilor. Ca metode de multiplexare a conexiunilor sunt sus\u021binute tehnici precum epoll, kqueue, \/dev\/poll \u0219i select. Pentru multiplexarea conexiunilor este utilizat\u0103 biblioteca libuv, care este o extensie a libev \u00een sistemele Unix \u0219i a IOCP \u00een Windows. Pentru a crea un pool de thread-uri este folosit\u0103 biblioteca libeio, iar pentru efectuarea cererilor DNS \u00een mod non-blocant este integrat c-ares. Toate apelurile de sistem care genereaz\u0103 blocaje sunt efectuate \u00een cadrul pool-ului de thread-uri \u0219i apoi, ca \u0219i handlerii de semnale, transmit rezultatul muncii lor \u00eenapoi printr-un canal anonim (pipe).     <\/p>\n<p>Executarea codului JavaScript este asigurat\u0103 prin utilizarea motorului V8 dezvoltat de Google (\u00een plus, Microsoft dezvolt\u0103 o variant\u0103 a Node.js cu motorul Chakra-Core). \u00cen esen\u021b\u0103, Node.js este similar cu framework-urile Perl AnyEvent, Ruby Event Machine, Python Twisted \u0219i implementarea evenimentelor \u00een Tcl, dar loop-ul de procesare a evenimentelor \u00een Node.js este ascuns de dezvoltator \u0219i se aseam\u0103n\u0103 cu procesarea evenimentelor \u00eentr-o aplica\u021bie web care ruleaz\u0103 \u00een browser.<br \/>\n<br \/>Sursa: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=62066\">opennet.ro<\/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 23.0.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 23.0 \u043e\u0442\u043d\u0435\u0441\u0451\u043d \u043a \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043e\u0447\u043d\u044b\u043c \u0432\u0435\u0442\u043a\u0430\u043c, \u0441\u043e\u043f\u0440\u043e\u0432\u043e\u0436\u0434\u0435\u043d\u0438\u0435 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043e\u0441\u0443\u0449\u0435\u0441\u0442\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0432 \u0442\u0435\u0447\u0435\u043d\u0438\u0435 7 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 (\u0434\u043e \u0438\u044e\u043d\u044f 2025 \u0433\u043e\u0434\u0430). \u0412 \u0431\u043b\u0438\u0436\u0430\u0439\u0448\u0438\u0435 \u0434\u043d\u0438 \u0431\u0443\u0434\u0435\u0442 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0430 \u0441\u0442\u0430\u0431\u0438\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0432\u0435\u0442\u043a\u0438 Node.js 22, \u043a\u043e\u0442\u043e\u0440\u0430\u044f 29 \u043e\u043a\u0442\u044f\u0431\u0440\u044f \u043f\u043e\u043b\u0443\u0447\u0438\u0442 \u0441\u0442\u0430\u0442\u0443\u0441 LTS \u0438 \u0431\u0443\u0434\u0435\u0442 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0442\u044c\u0441\u044f \u0434\u043e \u0430\u043f\u0440\u0435\u043b\u044f 2027 \u0433\u043e\u0434\u0430. \u041f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u043f\u0440\u043e\u0448\u043b\u044b\u0445 LTS-\u0432\u0435\u0442\u043e\u043a Node.js [&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-120214","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0421\u043e\u0441\u0442\u043e\u044f\u043b\u0441\u044f \u0440\u0435\u043b\u0438\u0437 Node.js 23.0.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\/ro\/blog\/news\/opublikovana-platforma-node-js-23-0-s-nachalnoj-podderzhkoj-yazyka-typescript\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"ro_RO\" \/>\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\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d\u0430 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0430 Node.js 23.0 \u0441 \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e\u0439 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u043e\u0439 \u044f\u0437\u044b\u043a\u0430 TypeScript | 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 23.0.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\/ro\/blog\/news\/opublikovana-platforma-node-js-23-0-s-nachalnoj-podderzhkoj-yazyka-typescript\" \/>\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=\"2024-10-17T11:09:19+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-02-15T20:30:50+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\udd47A fost publicat\u0103 platforma Node.js 23.0 cu suport ini\u021bial pentru limbajul TypeScript | ProHoster","description":"A avut loc lansarea Node.js 23.0.0, platforma pentru rularea aplica\u021biilor de re\u021bea \u00een limbajul JavaScript.","canonical_url":"https:\/\/prohoster.info\/ro\/blog\/news\/opublikovana-platforma-node-js-23-0-s-nachalnoj-podderzhkoj-yazyka-typescript","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"ro_RO","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\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d\u0430 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0430 Node.js 23.0 \u0441 \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e\u0439 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u043e\u0439 \u044f\u0437\u044b\u043a\u0430 TypeScript | ProHoster","og:description":"\u0421\u043e\u0441\u0442\u043e\u044f\u043b\u0441\u044f \u0440\u0435\u043b\u0438\u0437 Node.js 23.0.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\/ro\/blog\/news\/opublikovana-platforma-node-js-23-0-s-nachalnoj-podderzhkoj-yazyka-typescript","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":"2024-10-17T11:09:19+00:00","article:modified_time":"2026-02-15T20:30:50+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"120214","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-15 20:31:56","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2026-01-23 07:21:39","updated":"2026-02-15 20:31:56","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts\/120214","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/comments?post=120214"}],"version-history":[{"count":2,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts\/120214\/revisions"}],"predecessor-version":[{"id":161185,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts\/120214\/revisions\/161185"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/media?parent=120214"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/categories?post=120214"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/tags?post=120214"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}