Tha àrd-ùrlar JavaScript taobh an fhrithealaiche Node.js 20.0 ri fhaighinn

Tha sgaoileadh Node.js 20.0, àrd-ùrlar airson tagraidhean lìonra a chuir an gnìomh ann an JavaScript, air tachairt. Chaidh Node.js 20.0 a shònrachadh don mheur taic fhada, ach cha tèid an inbhe seo a shònrachadh chun Dàmhair, às deidh a bhith seasmhach. Gheibh Node.js 20.x taic gu 30 Giblean, 2026. Mairidh cumail suas a’ mheur Node.js 18.x LTS roimhe seo chun Ghiblean 2025, agus am meur 16.x LTS roimhe chun t-Sultain 2023. Thèid meur 14.x LTS a chumail air 30 Giblean, agus meur eadar-amail Node.js 19.x air 1 Ògmhios.

Prìomh leasachaidhean:

  • Chaidh an einnsean V8 ùrachadh gu dreach 11.3, a tha air a chleachdadh ann an Chromium 113. De na h-atharrachaidhean an coimeas ri meur Node.js 19, a chleachd an einnsean Chromium 107, na gnìomhan String.prototype.isWellFormed agus toWellFormed, tha an Array.prototype agus TypedArray.
  • Thathas a’ moladh inneal Modail Cead deuchainneach a leigeas leat ruigsinneachd air goireasan sònraichte a chuingealachadh aig àm cur gu bàs. Tha taic Modail Cead air a chomasachadh le bhith a’ sònrachadh a’ bhratach “--experimental-permission” nuair a bhios e ga ruith. Anns a’ chiad bhuileachadh, chaidh roghainnean a mholadh gus cothrom sgrìobhadh (--allow-fs-write) agus leughadh (--allow-fs-read) gu pàirtean sònraichte den FS, pròiseasan cloinne (--allow-child-process) a chuingealachadh. , tuilleadan (--no-addons ) agus snàithleanan (--allow-worker). Mar eisimpleir, gus sgrìobhadh chun eòlaire / tmp agus am faidhle / home/index.js a leughadh, faodaidh tu sònrachadh: nód --experimental-permission --allow-fs-write =/tmp/ --allow-fs-read =/home/index.js clàr-amais .js

    Gus sgrùdadh a dhèanamh air ruigsinneachd, thathas a’ moladh an dòigh process.permission.has() a chleachdadh, mar eisimpleir, “process.permission.has(‘fs.write’,”/tmp/test).

  • Tha luchd-làimhseachaidh airson modalan taobh a-muigh ECMAScript (ESMs) air an luchdachadh tron ​​​​roghainn “--experimental-loader” a-nis air an cur gu bàs ann an snàithlean air leth, air leth bhon phrìomh snàithlean, a chuireas às do eadar-ghearradh còd tagraidh agus modalan ESM luchdaichte. Coltach ri brobhsairean, bidh an dòigh import.meta.resolve() a-nis a’ dol gu co-shìnte nuair a thèid a ghairm bho thaobh a-staigh tagradh. Ann an aon de na h-ath mheuran de Node.js, thathas an dùil taic luchdachadh ESM a ghluasad chun roinn de fheartan seasmhach.
  • Tha am modal nód: test (test_runner), a chaidh a dhealbhadh gus deuchainnean JavaScript a chruthachadh agus a ruith a thilleas toraidhean ann an cruth TAP (Test Anything Protocol), air a ghluasad gu stàball.
  • Chaidh sgioba coileanaidh air leth a stèidheachadh, a tha, mar ullachadh airson a’ mheur ùr, air obrachadh gus diofar phàirtean ùine ruith a luathachadh, a’ gabhail a-steach parsadh URL, faigh () agus EventTarget. Mar eisimpleir, chaidh an còrr de bhith a’ tòiseachadh an EventTarget a leth, chaidh coileanadh an dòigh URL.canParse() a leasachadh gu mòr, agus chaidh èifeachdas nan timers a leasachadh. A bharrachd air an sin, tha sgaoileadh parser URL àrd-choileanadh - Ada 2.0, sgrìobhte ann an C ++, air a ghabhail a-steach san sgrìobhadh.
  • Tha leasachadh feart deuchainneach airson a bhith a’ lìbhrigeadh thagraidhean ann an cruth aon fhaidhle so-ghnìomhaichte (SEA, Tagraidhean So-ghnìomhaichte Singilte) air leantainn. Feumaidh cruthachadh gnìomh a-nis blob a chaidh a chruthachadh bho fhaidhle rèiteachaidh JSON a chuir an àite (an àite faidhle JavaScript a chuir na àite).
  • Co-fhreagarrachd Web Crypto API nas fheàrr le buileachadh bho phròiseactan eile.
  • Taic oifigeil a bharrachd dha Windows air siostaman ARM64.
  • Taic leantainneach do leudachaidhean WASI (WebAssembly System Interface) airson a bhith a’ cruthachadh thagraidhean neo-eisimeileach WebAssembly. Thoir air falbh an fheum air bratach loidhne-àithne sònraichte a shònrachadh gus taic WASI a chomasachadh.

Faodar an àrd-ùrlar Node.js a chleachdadh an dà chuid airson cumail suas frithealaichean air tagraidhean lìn agus airson prògraman lìonra teachdaiche is frithealaiche cunbhalach a chruthachadh. Gus comas-gnìomh thagraidhean airson Node.js a leudachadh, chaidh cruinneachadh mòr de mhodalan ullachadh, anns am faigh thu modalan le gnìomhachadh HTTP, SMTP, XMPP, DNS, FTP, IMAP, frithealaichean POP3 agus teachdaichean, modalan airson amalachadh le diofar fhrèaman lìn, luchd-làimhseachaidh WebSocket agus Ajax, luchd-ceangail DBMS (MySQL, PostgreSQL, SQLite, MongoDB), einnseanan teamplaid, einnseanan CSS, buileachadh algorithms crypto agus siostaman ceadachaidh (OAuth), parsers XML.

Gus dèanamh cinnteach gun tèid àireamh mhòr de dh’ iarrtasan co-shìnte a ghiullachd, bidh Node.js a’ cleachdadh modal cur an gnìomh còd asyncronach stèidhichte air làimhseachadh tachartas neo-bacadh agus mìneachadh luchd-làimhseachaidh fios air ais. Is e dòighean le taic airson ceanglaichean ioma-fhillte epoll, kqueue, /dev/ poll, agus tagh. Airson iomadachadh ceangail, thathas a’ cleachdadh an leabharlann libuv, a tha na chur-ris airson libev air siostaman Unix agus IOCP air Windows. Tha an leabharlann libeio air a chleachdadh gus amar snàithlean a chruthachadh, agus tha c-ares amalaichte gus ceistean DNS a dhèanamh ann am modh gun bhacadh. Bidh a h-uile gairm siostam a tha ag adhbhrachadh bacadh air a chuir gu bàs taobh a-staigh an amar snàithlean agus an uairsin, mar làimhseachadh chomharran, a’ gluasad toradh an cuid obrach air ais tro phìob gun ainm (pìob). Tha coileanadh còd JavaScript air a thoirt seachad tro bhith a’ cleachdadh an einnsean V8 a chaidh a leasachadh le Google (a bharrachd air an sin, tha Microsoft a’ leasachadh dreach de Node.js leis an einnsean Chakra-Core).

Aig a chridhe, tha Node.js coltach ris an Perl AnyEvent, Inneal Tachartas Ruby, frèaman Python Twisted, agus buileachadh tachartas Tcl, ach tha lùb an tachartais ann an Node.js falaichte bhon leasaiche agus tha e coltach ri làimhseachadh tachartais ann an tagradh lìn a tha a’ ruith. ann am brabhsair. Nuair a bhios tu a’ sgrìobhadh thagraidhean airson node.js, feumaidh tu beachdachadh air mion-fhiosrachadh prògramadh air a stiùireadh le tachartas, mar eisimpleir, an àite a bhith a’ dèanamh “var result = db.query (“select..”);” le feitheamh ri crìoch a chur air obair agus giullachd thoraidhean às deidh sin, bidh Node.js a’ cleachdadh prionnsapal coileanadh asyncronach, i.e. tha an còd air a thionndadh gu "db.query ("select..", function (toradh) {toradh toraidh});", anns am bi smachd a 'dol gu còd eile sa bhad, agus thèid toradh na ceiste a phròiseasadh mar a thig dàta.

Source: fosgailtenet.ru

Cuir beachd ann