Hoʻokuʻu ʻia ʻo JavaScript Node.js 16.0

Ua hoʻokuʻu ʻia ʻo Node.js 16.0, kahi kahua no ka holo ʻana i nā noi pūnaewele ma JavaScript. Hoʻonohonoho ʻia ʻo Node.js 16.0 ma ke ʻano he lālā kākoʻo lōʻihi, akā e hāʻawi ʻia kēia kūlana i ʻOkakopa wale nō, ma hope o ka hoʻopaʻa ʻana. Kākoʻo ʻia ʻo Node.js 16.0 a hiki i ʻApelila 2023. E mau ana ka mālama ʻana i ka lālā LTS o Node.js 14.0 a hiki i ʻApelila 2023, a ʻo ka makahiki ma mua o ka lālā LTS hope 12.0 a hiki i ʻApelila 2022. E hoʻopau ʻia ke kākoʻo no ka lālā 10.0 LTS i nā lā 10.

Nā hoʻomaikaʻi nui:

  • Ua hōʻano hou ʻia ka ʻenekini V8 i ka mana 9.0 (Node.js 15 i hoʻohana i ka hoʻokuʻu 8.6), e ʻae ai i ka hoʻokō ʻana i nā hiʻohiʻona e like me ka waiwai "indices" no nā hōʻike maʻamau (me kahi pūʻulu me nā kūlana hoʻomaka a hoʻopau o nā hui o nā pāʻani) , ke ala Atomics ma Node.js 16 .waitAsync (async version of Atomics.wait), kākoʻo no ka hoʻohana ʻana i ka huaʻōlelo await ma nā modula kiʻekiʻe. Ua hoʻokē ʻia nā kelepona hana i nā kūlana i kūpono ʻole ka helu o nā hoʻopaʻapaʻa i nā ʻāpana i wehewehe ʻia i ka hana.
  • Ua hoʻokūpaʻa ʻia ka Timers Promises API, e hāʻawi ana i kahi ʻano hana ʻē aʻe no ka hana ʻana me nā timers e hoʻihoʻi i nā mea Promise ma ke ʻano he huahana, kahi e hoʻopau ai i ka pono o ka hoʻohana ʻana iā util.promisify(). e hoʻokomo i {setTimeout} mai nā 'timers/promises'; holo ka hana async () { kali i ka hoʻonohonoho manawa(5000); console.log('Aloha, World!'); } holo();
  • Ua hoʻohui ʻia kahi hoʻokō hoʻokolohua o ka Web Crypto API, i hoʻolālā ʻia e hana i nā hana cryptographic maʻamau ma ka ʻaoʻao o nā noi pūnaewele, e like me ka hoʻopunipuni ʻana i nā hashes cryptographic, ka hana ʻana a me ka hōʻoia ʻana i nā pūlima kikohoʻe, ka hoʻopili ʻana a me ka hoʻokaʻawale ʻana i ka ʻikepili me ka hoʻohana ʻana i nā ʻano hoʻopunipuni like ʻole, a me ka hana ʻana i ka cryptographically palekana. helu helu. Hāʻawi ka API i nā hana no ka hana ʻana a me ka mālama ʻana i nā kī.
  • Ua hōʻano hou ʻia ka N-API (API no ka hoʻomohala ʻana i nā mea hoʻohui) i ka mana 8.
  • Ua hana ʻia ka hoʻololi ʻana i ka hoʻokuʻu hou ʻana o ka luna pūʻulu NPM 7.10.
  • Hoʻokūpaʻa i ka hoʻokō ʻana i ka papa AbortController, kahi i hoʻokumu ʻia ma ka API Web AbortController a hiki ke hoʻopau ʻia nā hōʻailona ma nā API i koho ʻia.
  • Ua hoʻopaʻa ʻia ke kākoʻo no ke kolu o ka mana o ka palapala ʻāina kumu, i hoʻohana ʻia e hoʻohālikelike i nā modula i hana ʻia, hana ʻia a pūʻulu ʻia me ka code kumu kumu.
  • No ka hoʻopili ʻana me nā API Pūnaewele hoʻoilina, ua hoʻohui ʻia nā ala buffer.atob(data) a me buffer.btoa(data).
  • Ua hoʻomaka ka hoʻokumu ʻana o nā hui no nā polokalamu Apple hou me ka chip M1 ARM.
  • Ma ke kahua Linux, ua hoʻokiʻekiʻe ʻia nā koi o ka compiler i GCC 8.3.

E hoʻomanaʻo kākou e hiki ke hoʻohana ʻia ka paepae Node.js no ke kākoʻo ʻaoʻao kikowaena o nā noi pūnaewele a no ka hoʻokumu ʻana i nā polokalamu kelepona maʻamau a me nā kikowaena kikowaena. No ka hoʻonuiʻana i ka hana o nā noi no Node.js, ua hoʻomākaukauʻia kahi hōʻiliʻili nui o nā modula, kahi e hiki ai iāʻoe ke loaʻa nā modula me ka hoʻokōʻana o HTTP, SMTP, XMPP, DNS, FTP, IMAP, POP3 servers a me nā mea kūʻai, modules no ka hoʻohui. me nā pūnaewele pūnaewele likeʻole, WebSocket a me Ajax mea lawelawe , nā mea hoʻohui i DBMS (MySQL, PostgreSQL, SQLite, MongoDB), nā mīkini hoʻohālike, nā mīkini CSS, nā hoʻokō o nā algorithms cryptographic a me nā ʻōnaehana mana (OAuth), XML parsers.

No ka hōʻoia ʻana i ka hana ʻana o ka nui o nā noi like, hoʻohana ʻo Node.js i kahi hoʻohālike hoʻokō code asynchronous e pili ana i ka mālama ʻana i ka hanana ʻole a me ka wehewehe ʻana o nā mea hoʻohana kelepona. ʻO nā ala i kākoʻo ʻia no ka hoʻohui ʻana i nā pilina he epoll, kqueue, /dev/poll, a koho. No ka hoʻohui multiplexing, hoʻohana ʻia ka waihona libuv, kahi mea hoʻohui no libev ma nā ʻōnaehana Unix a me IOCP ma Windows. Hoʻohana ʻia ka waihona libeio no ka hana ʻana i kahi kolamu thread, a ua hoʻohui ʻia nā c-ares e hana i nā nīnau DNS ma ke ʻano pale ʻole. Hoʻokō ʻia nā kelepona ʻōnaehana āpau i hoʻopaʻa ʻia i loko o ka loko o ke kaula a laila, e like me nā mea lawelawe hōʻailona, ​​hoʻihoʻi i ka hopena o kā lākou hana ma o ka paipu inoa ʻole (pipe). Hāʻawi ʻia ka hoʻokō ʻana i ka code JavaScript ma o ka hoʻohana ʻana i ka mīkini V8 i hoʻomohala ʻia e Google (eia kekahi, ke kūkulu nei ʻo Microsoft i kahi mana o Node.js me ka ʻenekini Chakra-Core).

Ma kona kumu, ua like ka Node.js me ka Perl AnyEvent, Ruby Event Machine, Python Twisted frameworks, a me ka hoʻokō hanana Tcl, akā ua hūnā ʻia ka hanana hanana ma Node.js mai ka mea hoʻomohala a ua like me ka lawelawe ʻana i ka hanana ma kahi noi pūnaewele e holo ana. ma ka polokalamu kele pūnaewele. I ke kākau ʻana i nā noi no node.js, pono ʻoe e noʻonoʻo i nā kikoʻī o ka hoʻonohonoho ʻana i ka hanana, no ka laʻana, ma mua o ka hana ʻana "var result = db.query("select..");" me ka kali ʻana no ka pau ʻana o ka hana a me ka hoʻoili ʻana o nā hopena, hoʻohana ʻo Node.js i ke kumu o ka hoʻokō asynchronous, ʻo ia hoʻi. ua hoʻololi ʻia ke code i "db.query ("koho ..", hana (hopena) {hopena hana});", kahi e hele koke ai ka mana i ke code hou aʻe, a e hana ʻia ka hopena nīnau i ka hiki ʻana mai o ka ʻikepili.

Eia hou, hiki ke hoʻomaopopo ʻia ʻo ka hui Deno, i hoʻokumu ʻia e ka mea nāna i hana ʻo Node.js e hoʻomohala i ka paepae Deno e hiki mai ana, ua loaʻa iā $4.9 miliona i nā hoʻopukapuka. Ma kāna kumu, ua likeʻo Deno me Node.js, akā ho'āʻoʻo ia e hoʻopau i nā hewa manaʻo i hanaʻia ma ka hoʻolālā Node.js a hāʻawi i nā mea hoʻohana i kahi kūlana palekana. Hoʻomaopopo ʻia e kūkulu ʻia nā hoʻonā ʻoihana a Deno ma nā huahana wehe loa, a ʻo ka Open Core model me nā hana uku ʻokoʻa ʻike ʻia ʻaʻole i ʻae ʻia no ka paepae Deno.

Source: opennet.ru

Pākuʻi i ka manaʻo hoʻopuka