O lo'o avanoa le fa'avae JavaScript Node.js 18.0

Node.js 18.0 na tatalaina, o se faʻavae mo le faʻaogaina o fesoʻotaʻiga i le JavaScript. Node.js 18.0 o loʻo faʻavasegaina o se lala lagolago mo se taimi umi, ae o lenei tulaga o le a tuʻuina atu ia Oketopa, pe a maeʻa le faʻamautuina. Node.js 18.x o le a lagolagoina seia oo ia Aperila 2025. O le tausiga o le lala LTS muamua a le Node.js 16.x o le a tumau seia oo ia Aperila 2024, ma le tausaga a'o lumana'i le lala LTS mulimuli 14.x seia oo ia Aperila 2023. Ole lala ole 12.x LTS ole a fa'amuta ile Aperila 30th, ma le Node.js 17.x staging lala ole a fa'amuta ile Iuni 1st.

Fa'aleleia autu:

  • O le masini V8 ua toe faʻafouina i le version 10.1, lea o loʻo faʻaaogaina i le Chromium 101. Faʻatusatusa i le 17.9.0 faʻasalalauga o Node.js, o loʻo i ai nei le lagolago mo foliga e pei o le findLast ma findLastIndex metotia mo le sailia o elemene e fesoʻotaʻi ma le iuga o se laina, ma le Intl.supportedValuesOf galuega. Fa'aleleia le Intl.Locale API. Ua faatelevaveina le amataga o fanua o vasega ma metotia tumaoti.
  • O le su'esu'ega fetch() API e mafai ona fa'aletonu, fuafuaina mo le utaina o punaoa i luga ole feso'otaiga. O le faʻatinoga e faʻavae i luga o le code mai le HTTP/1.1 undici client ma e latalata i le API tutusa o loʻo tuʻuina atu i suʻesuʻega. E aofia ai le lagolago mo le FormData, Ulutala, Talosaga ma Tali faʻafesoʻotaʻi mo le faʻaogaina o talosaga HTTP ma ulutala tali. const res = faatali fetch('https://nodejs.org/api/documentation.json'); afai (res.ok) {const data = faatali res.json(); console.log(fa'amaumauga); }
  • O se fa'ata'ita'iga fa'atinoga o le Web Streams API ua fa'aopoopoina, e maua ai le avanoa i fa'amaumauga fa'amaumauga na maua i luga ole feso'otaiga. O le API e mafai ai ona faʻaopoopo au lava aufaipisinisi e galulue faʻatasi ma faʻamatalaga pe a oʻo mai faʻamatalaga i luga o le upega tafailagi, e aunoa ma le faʻatali mo le faila atoa e sii mai. O mea ua maua nei i Node.js e aofia ai le ReadableStream*, TransformStream*, WritableStream*, TextEncoderStream, TextDecoderStream, CompressionStream, ma DecompressionStream.
  • O le Blob API ua siitia i le mautu, e mafai ai ona e faʻapipiʻi faʻamatalaga mataʻutia e le mafai ona suia mo le faʻaogaina saogalemu i filo a tagata faigaluega eseese.
  • O le BroadcastChannel API ua faʻamautuina, e mafai ai ona e faʻatulagaina le fefaʻatauaʻiga o feʻau i le asynchronous mode i le "tasi sender - tele recipients" format.
  • Fa'aopoopo le fa'ata'ita'iga module node: su'ega mo le fa'atupuina ma le fa'atinoina o su'ega i le JavaScript e toe fa'afo'i ai fa'ai'uga ile TAP (Test Anything Protocol) format.
  • O le faʻatupuina o faʻapotopotoga ua saunia mo le Red Hat Enterprise Linux (RHEL) 8 ma isi faʻasalalauga faʻavae i luga ole Glibc 2.28+, e aofia ai Debian 10 ma le Ubuntu 20.04, faʻapea foʻi ma macOS 10.15+ ua tuʻuina atu. Ona o faʻafitauli i le fausia o le afi V8, o le fausiaina o 32-bit fausia mo Windows ua taofia mo sina taimi.
  • Tuuina atu se filifiliga faʻataʻitaʻi e fausia ai se Node.js e mafai ona faʻaaogaina ma vaega filifilia e tagata faʻaoga na amataina i le amataga. Ina ia faʻamalamalamaina vaega amata, o le "--node-snapshot-main" filifiliga ua faʻaopoopo i le configure build script, mo se faʻataʻitaʻiga, "./configure —node-snapshot-main=marked.js; igoa node"

O le Node.js platform e mafai ona fa'aoga uma mo le lagolago i itu-aumau o talosaga i luga ole laiga, ma mo le fatuina o polokalame feso'ota'iga masani a tagata fa'atau ma server. Ina ia faʻalauteleina le faʻatinoga o talosaga mo Node.js, ua saunia se aofaʻiga tele o modules, lea e mafai ona e maua ai modules ma le faʻatinoga o le HTTP, SMTP, XMPP, DNS, FTP, IMAP, POP3 servers ma tagata faʻatau, modules mo le tuʻufaʻatasia. faʻatasi ai ma faʻasalalauga 'upega tafaʻilagi eseese, WebSocket ma Ajax handler , fesoʻotaʻiga i DBMS (MySQL, PostgreSQL, SQLite, MongoDB), faʻataʻitaʻiga afi, masini CSS, faʻatinoga o faʻataʻitaʻiga algorithms ma faiga faʻatagaina (OAuth), XML parsers.

Ina ia mautinoa le faagasologa o se numera tele o talosaga tutusa, Node.js faʻaaogaina se faʻataʻitaʻiga faʻataʻitaʻiga code asynchronous e faʻavae i luga o le faʻaogaina o mea e le faʻalavelaveina ma le faʻamatalaga o tagata e faʻafeiloaʻi. O auala lagolago mo feso'ota'iga fa'atele o le epoll, kqueue, /dev/poll, ma filifili. Mo fesoʻotaʻiga multiplexing, o loʻo faʻaogaina le faletusi libuv, o se faʻaopoopoga mo libev i luga o Unix system ma IOCP i Windows. O le faletusi libeio o loʻo faʻaaogaina e fai ai se filo filo, ma c-ares ua tuʻufaʻatasia e faʻatino ai fesili DNS i le le poloka poloka. O telefoni uma e mafua ai le poloka e faia i totonu o le vaitaele filo ma, e pei o le au faʻailo, toe faʻafeiloaʻi le taunuuga oa latou galuega i se paipa e le o taʻua. O le faʻatinoina o le code JavaScript e tuʻuina atu e ala i le faʻaogaina o le masini V8 na atiaʻe e Google (faʻaopoopo, Microsoft o loʻo atiaʻe se faʻasologa o Node.js ma le Chakra-Core engine).

I lona autu, Node.js e tutusa ma le Perl AnyEvent, Ruby Event Machine, Python Twisted frameworks, ma le Tcl event implementation, ae o le mea na tupu i Node.js o loʻo natia mai le atinaʻe ma e pei o le faʻafoeina o mea i totonu o se upega tafaʻilagi o loʻo tamoe. i le su'esu'e. Pe a tusia talosaga mo node.js, e tatau ona e mafaufau i faʻamatalaga patino o polokalame faʻaosoina, mo se faʻataʻitaʻiga, nai lo le faia o le "var result = db.query("select..");" faʻatasi ai ma le faʻatali mo le faʻamaeʻaina o galuega ma le gaioiga mulimuli ane o taunuʻuga, e faʻaaogaina e Node.js le mataupu faavae o le faʻataunuʻuina asynchronous, i.e. ua suia le code i le "db.query ("filifili ..", galuega (iuga) {result process});", lea o le a vave ona pasi atu le pule i le isi code, ma o le a faʻatautaia le faʻaiʻuga pe a oʻo mai faʻamatalaga.

puna: opennet.ru

Faaopoopo i ai se faamatalaga