Dandalin JavaScript na gefen uwar garken Node.js 18.0 akwai

An saki Node.js 18.0, dandamali don gudanar da aikace-aikacen cibiyar sadarwa a JavaScript. Node.js 18.0 an rarraba shi azaman reshen tallafi na dogon lokaci, amma za a sanya wannan matsayin a cikin Oktoba kawai, bayan daidaitawa. Node.js 18.x za a tallafawa har zuwa Afrilu 2025. Kula da reshen LTS na baya na Node.js 16.x zai kasance har zuwa Afrilu 2024, da kuma shekarar da ta gabata reshen LTS 14.x har zuwa Afrilu 2023. Za a daina reshen 12.x LTS a ranar 30 ga Afrilu, kuma za a dakatar da reshe na Node.js 17.x a ranar 1 ga Yuni.

Babban haɓakawa:

  • An sabunta injin V8 zuwa sigar 10.1, wanda aka yi amfani da shi a cikin Chromium 101. Idan aka kwatanta da sakin 17.9.0 na Node.js, yanzu akwai goyan baya ga fasali kamar FindLast da nemoLastIndex hanyoyin don nemo abubuwa dangane da ƙarshen tsararru, da aikin Intl.supportedValuesOf. Intl.Locale API ingantacce. An haɓaka farawar filayen aji da hanyoyin sirri.
  • API ɗin gwajin gwajin () an kunna ta tsohuwa, wanda aka tsara don loda albarkatun akan hanyar sadarwa. Aiwatar ta dogara ne akan lamba daga abokin ciniki na HTTP/1.1 undici kuma yana kusa da yiwuwar irin wannan API ɗin da aka bayar a cikin masu bincike. Wannan ya haɗa da goyan baya ga FormData, Headers, Request da Amsa musaya don sarrafa buƙatun HTTP da kanun amsa. const res = jira a kawo ('https://nodejs.org/api/documentation.json'); idan (res.ok) {const data = jira res.json (); console.log (bayanai); }
  • An ƙara aiwatar da gwaji na API ɗin Rafukan Yanar Gizo, yana ba da dama ga rafukan bayanan da aka karɓa akan hanyar sadarwa. API ɗin yana ba da damar ƙara masu sarrafa naku don yin aiki tare da bayanai yayin da bayanai ke isa kan hanyar sadarwar, ba tare da jiran ɗaukan fayil ɗin gabaɗaya ba. Abubuwan da ake samu yanzu a Node.js sun haɗa da ReadableStream*, TransformStream*, WritableStream*, TextEncoderStream, TextDecoderStream, CompressionStream, da DecompressionStream.
  • An matsar da API ɗin Blob zuwa tsayayye, yana ba ku damar tattara ɗanyen bayanan da ba za a iya canzawa ba don amintaccen amfani a zaren ma'aikata daban-daban.
  • API ɗin BroadcastChannel an daidaita shi, yana ba ku damar tsara musayar saƙonni a cikin yanayin daidaitacce a cikin tsarin "mai aikawa ɗaya - masu karɓa da yawa".
  • Ƙara node na gwaji: gwaji don ƙirƙira da gudanar da gwaje-gwaje a cikin JavaScript waɗanda ke dawo da sakamako a cikin tsarin TAP (Test Anything Protocol).
  • Ƙirƙirar taron da aka shirya don Red Hat Enterprise Linux (RHEL) 8 da sauran rarrabawa dangane da Glibc 2.28+, gami da Debian 10 da Ubuntu 20.04, kazalika don macOS 10.15+ an bayar. Saboda matsalolin gina injin V8, ƙirƙirar 32-bit ginawa don Windows an dakatar da shi na ɗan lokaci.
  • An ba da zaɓi na gwaji don gina Node.js mai aiwatarwa tare da abubuwan da aka zaɓa na mai amfani da aka fara a farawa. Don ayyana abubuwan da aka fara farawa, an ƙara zaɓin “- node-snapshot-main” a cikin rubutun ginawa, misali, “./configure —node-snapshot-main=marked.js; sunan node"

Za a iya amfani da dandalin Node.js duka don kula da uwar garken aikace-aikacen yanar gizo da kuma ƙirƙirar shirye-shiryen abokin ciniki na yau da kullum da uwar garken. Don fadada ayyukan aikace-aikacen don Node.js, an shirya babban tarin kayayyaki, wanda za ku iya samun kayayyaki tare da aiwatar da HTTP, SMTP, XMPP, DNS, FTP, IMAP, POP3 sabobin da abokan ciniki, kayayyaki don haɗin kai. tare da tsarin yanar gizo daban-daban, masu sarrafa WebSocket da Ajax , masu haɗin DBMS (MySQL, PostgreSQL, SQLite, MongoDB), injunan gwaji, injunan CSS, aiwatar da algorithms na crypto da kuma tsarin izini (OAuth), XML parsers.

Don tabbatar da sarrafa ɗimbin buƙatun layi ɗaya, Node.js yana amfani da samfurin aiwatar da lambar asynchronous dangane da abubuwan da ba a toshewa ba da ma'anar masu kula da kira. Hanyoyin da aka goyan baya don haɗa haɗin kai sune epoll, kqueue, /dev/poll, kuma zaɓi. Don haɗawa da yawa, ana amfani da ɗakin karatu na libuv, wanda shine ƙari don libev akan tsarin Unix da IOCP akan Windows. Ana amfani da ɗakin karatu na libeio don ƙirƙirar tafkin zaren, kuma an haɗa c-ares don yin tambayoyin DNS a yanayin da ba tare da toshewa ba. Ana aiwatar da duk kiran tsarin da ke haifar da toshewa a cikin tafkin zaren sannan, kamar masu sarrafa sigina, canja wurin sakamakon aikinsu ta hanyar bututu (bututu) da ba a bayyana sunansa ba. Ana ba da aiwatar da lambar JavaScript ta hanyar amfani da injin V8 wanda Google ya haɓaka (Bugu da ƙari, Microsoft yana haɓaka sigar Node.js tare da injin Chakra-Core).

A ainihin sa, Node.js yayi kama da Perl AnyEvent, Ruby Event Machine, Python Twisted frameworks, da kuma aiwatar da taron Tcl, amma madaidaicin taron a Node.js yana ɓoye daga mai haɓakawa kuma yayi kama da gudanar da taron a cikin aikace-aikacen yanar gizon da ke gudana. a cikin browser. Lokacin rubuta aikace-aikacen node.js, kuna buƙatar yin la'akari da ƙayyadaddun shirye-shiryen da ke gudana, alal misali, maimakon yin "var sakamako = db.query("zaɓa ..");" tare da jiran kammala aikin da aiwatar da sakamako na gaba, Node.js yana amfani da ka'idar asynchronous kisa, watau. An canza lambar zuwa "db.query ("zaɓi..", aiki (sakamakon) {sakamakon sarrafawa});, wanda sarrafawa zai wuce nan take zuwa ƙarin lambar, kuma za a sarrafa sakamakon tambaya yayin da bayanai suka isa.

source: budenet.ru

Add a comment