Ebipụtala ikpo okwu Node.js 23.0 site na nkwado izizi maka asụsụ TypeScript

Node.js 23.0.0, ikpo okwu maka ịgba ọsọ ngwa netwọk na Javascript, ewepụtala. Node.js 23.0 bụ nkewa dị ka ngalaba etiti, nke a ga-akwado maka ọnwa 7 (ruo June 2025). N'ụbọchị na-abịa, a ga-agwụcha nkwụsi ike nke ngalaba Node.js 22, nke ga-enweta ọkwa LTS na October 29 ma kwado ya ruo Eprel 2027. Nkwado maka ngalaba LTS gara aga nke Node.js 20.x na 18.x ga-aga n'ihu ruo Eprel 2026 na 2025, n'otu n'otu.

Isi nkwalite:

  • Nkwado nnwale agbakwunyere maka TypeScript, nke na-enye ohere nkọwa ụdịdị akọwapụtara. A na-akwado nkwado site na iji nhọrọ "--experimental-strip-types" na "--experimental-transform-types". N'ihe banyere nhọrọ nke mbụ, a na-ebelata ịrụ ọrụ na TypeScript na ikpochapụ ụdị nkọwa asụsụ (ụdị nlele anaghị eme, a na-atụgharị koodu ahụ ka ọ bụrụ Javascript na-enweghị ụdị). Nhọrọ nke abụọ na-atụgharị ụfọdụ ihe syntax TypeScript, dị ka ọnụọgụgụ na oghere aha, na koodu Javascript.
  • Akwanyere site na ndabara bụ ikike iji oku "chọrọ ()" iji buo modul JavaScript ESM (ECMAScript Modules) na ọnọdụ mmekọrịta. A na-eji modul ESM na ihe nchọgharị ma dochie modul CommonJS kpọmkwem maka Node.js. Iji buo ya site na "require()" na Node.js, a ga-emerịrị modul ESM n'otu oge (na-echeghị n'ogo dị elu).
  • Enyere nchọpụta akpaaka nke modul ESM na faịlụ na-enweghị ma ọ bụ ya na ndọtị ".js". Na mbụ, a na-emeso faịlụ ndị dị otú ahụ dị ka modul CommonJS ma ọ bụrụ na akọwapụtaghị ụdị ha n'ụzọ doro anya na ngwugwu.json faịlụ dị n'otu akwụkwọ ndekọ aha ("ụdị": "modul"). Na ụdị ọhụrụ, maka faịlụ ndị ụdị akọwapụtaghị na ngwugwu.json, ọ na-ebu ụzọ buru ibu dị ka modul CommonJS, ma ọ bụrụ na nke a daa, mgbe ahụ dị ka modul ESM.
  • agbakwunyere mmejuputa nnwale dakọtara na ihe nchọgharị Emebere API Nchekwa Weebụ maka nchekwa data na-adịgide adịgide (klaasị Nchekwa mpaghara) ma ọ bụ nwa oge (klaasị Nchekwa oge) nke data na usoro isi/uru. Iji mee ka nkwado Nchekwa Weebụ rụọ ọrụ API ahụ na ọkọlọtọ "--experimental-webstorage" na ịkọwapụta ụzọ iji gaa na faịlụ nchekwa site na iji ọkọlọtọ "--localstorage-file".
  • Agbakwunyere nnwale SQLite API maka iji ọdụ data rụọ ọrụ site na iji asụsụ ajụjụ SQL na nchekwa dabere na ọba akwụkwọ SQLite. Na mgbakwunye na ịchekwa nchekwa data na faịlụ na diski, enwere ike idowe ya na ebe nchekwa site na ịkọwa ": memory:" kama aha faịlụ. A na-emejuputakwa API Nchekwa Weebụ ahụ e kwuru n'elu n'elu SQLite, na-ebute mgbakwunye SQLite dị ka ndabere maka Node.js.
  • Ekwuwapụtala iwu “node —run” ka ọ kwụsiri ike, emebere ka ọ na-agba ọsọ edemede akọwapụtara na faịlụ ngwugwu.json.
  • Nkwado nhọrọ etinyere maka caching achịkọtara koodu na diski iji mee ka mmalite nke modul dị ngwa ngwa. Agbanyere caching site na mgbanwe gburugburu NODE_COMPILE_CACHE. N'ihe gbasara ebumnuche ya, njirimara ahụ yiri ngwugwu v8-compile-cache, mana dị iche na arụmọrụ dị elu yana nkwado maka modul ESM.
  • Edozila ihe na-echekwa ihe iji bulie arụmọrụ nke ụzọ Buffer.copy() na Buffer.write().
  • Arụ ọrụ nke node: fs modul, nke na-ebelata ọnụ ọgụgụ oku na koodu C ++ n'oge arụ ọrụ.
  • Emelitere injin V8 ka ọ bụrụ ụdị 12.9, ejiri na Chromium 129.
  • E wepụrụ nkwado maka sistemụ Windows 32-bit.
  • N'ihi iwebata njirimara akọwapụtara na ọkọlọtọ C ++ 8 na Node.js na injin V20, ihe ndị a chọrọ maka ụdị nchịkọta GCC abawanyela. Ụlọ Node.js chọrọ ugbu a opekata mpe GCC 12.

Enwere ike iji ikpo okwu Node.js ma maka nkwado sava nke ngwa weebụ yana maka ịmepụta mmemme netwọk ndị ahịa na sava ọkọlọtọ. Iji gbasaa ọrụ nke ngwa Node.js, a kwadebela nnukwu nchịkọta modulu, gụnyere ndị na-emejuputa. sava na ndị ahịa nke HTTP, SMTP, XMPP, DNS, FTP, IMAP, POP3, modulu maka ijikọ na usoro weebụ dị iche iche, ndị na-ejikwa WebSocket na Ajax, ndị na-ejikọ na DBMS (MySQL, PostgreSQL, SQLite, MongoDB), injin template, injin CSS, mmejuputa algọridim cryptographic na sistemụ ikike (OAuth), ndị na-akọwa XML.

Iji jikwaa ọnụ ọgụgụ buru ibu nke arịrịọ ndị yiri ya, Node.js na-eji ụdị mmebe koodu asynchronous dabere na nhazi mmemme anaghị egbochi yana ịkọwa ndị njikwa oku. Ụzọ ndị akwadoro maka njikọta multiplexing gụnyere epoll, kqueue, /dev/poll, wee họrọ. Maka njikọta multiplexing, a na-eji ọba akwụkwọ libuv, nke bụ mgbakwunye na libev na sistemụ Unix yana IOCP na Windows. A na-eji ọba akwụkwọ libeio mepụta ọdọ mmiri eri, yana c-ares jikọtara ya iji mee ajụjụ DNS na ọnọdụ anaghị egbochi. A na-egbu oku sistemu niile na-akpata igbochi n'ime ọdọ mmiri eri ahụ wee, dị ka ndị na-ahụ maka mgbama, gafere nsonaazụ ọrụ ha site na ọkpọkọ akpọghị aha.

A na-ahụta mmezu nke koodu Javascript site na iji igwe V8 nke Google mepụtara (na mgbakwunye, Microsoft na-emepụta ụdị Node.js na injin Chakra-Core). Na isi ya, Node.js yiri Perl AnyEvent, Ruby Event Machine, Python Twisted frameworks na mmejuputa ihe omume na Tcl, ma ihe omume na Node.js zoro ezo site na onye mmepụta ma yie nhazi ihe omume na ngwa weebụ. na-agba ọsọ na ihe nchọgharị.

isi: opennet.ru

Tinye a comment