Kuidas lubadusi JavaScripti rakendada?



Lubadused JavaScripti kasutatakse põhiliselt asünkroonsete toimingute käsitlemiseks. See artikkel aitab teil kontseptsiooni üksikasjalikult uurida.

Lubadused sisse neid kasutatakse põhimõtteliselt asünkroonsete toimingute käitlemiseks. Lubadus on objekt, mis võib tulevikus luua ühe väärtuse: kas lahendatud väärtus või viga.

Järgmisi näpunäiteid käsitletakse selles artiklis,





Alustame selle artikliga JavaScripti lubaduste kohta

kuidas installida php-aknaid

Tähtsus:

Lubadused tulevad kasuks, kui tuleb lahendada mitu asünkroonset toimingut. Enne lubaduste sisseviimist JavaScripti kasutati asünkroonsete toimingute haldamiseks sündmusi ja tagasihelistamisfunktsioone. Kuna asünkroonsete toimingute korral pole sündmustest palju kasu, ei eelistata neid. Tagasihelistamise juurde tulles tekitaks nende mitmekordne kasutamine sellise segaduse, et kellelgi oli koodist väga raske aru saada.
Seetõttu on lubadused iga kodeerija esimene valik asünkroonsete toimingute lihtsaimaks käsitsemiseks. Neil on täiustatud funktsioonid, mis hõlbustavad nende toimingute tegemist kui tagasihelistamine ja sündmused.



  • Lubadused muudab koodi loetavaks, mis tähendab, et kodeerijad saavad seda ka hilisemas arengujärgus redigeerida.
  • Asünkroonsete toimingute ajal on parem tagasihelistamine võrreldes tagasihelistamise ja sündmusega.
  • Oluliseks funktsiooniks peetakse ka täiustatud veakäsitlust.
  • Seal on palju parem juhtimisdefinitsiooni voog asünkroonis.

Selle JavaScripti lubadusi käsitleva artikli jätkamine

Riikide tüüp:

Täidetud: Seotud nende lubadustega, mis on õnnestunud.
Tagasi lükatud: Seotud nende lubadustega, mis lükatakse tagasi.
Ootel: Seotud nende lubadustega, mis on ootel, st ei lükatud tagasi ega võeta vastu.
Lahendatud: Seotud nende lubadustega, mida täidetakse või lükatakse tagasi.

Selle JavaScripti lubadusi käsitleva artikli jätkamine



Lubaduste loomine

Lubadus luuakse lubaduse konstruktori abil.

Süntaks:

var lubamine = uus lubadus (funktsioon (lahenda, lükka tagasi) {// tee siin midagi})

Parameetrid:
Promise konstruktor võtab ühe argumendi, tagasihelistamisfunktsiooni. Tagasihelistamisfunktsioonis on kaks argumenti: lahendamine või tagasilükkamine. Toimingud tehakse tagasihelistamisfunktsioonide sees, kui kõik läks hästi, siis kõne laheneb, vastasel juhul saab kõne tagasi lükatud.

Selle JavaScripti lubadusi käsitleva artikli jätkamine

Näide 1:

var lubamine = uus lubadus (funktsioon (lahenda, lükka tagasi) {/ * deklareerib ja määratleb kaks sama sisuga konst andmetüübi muutujat. * / const a = 'Tere! Minu nimi on Yash ja mind huvitab arvutiteadus.' const b = 'Tere! Minu nimi on Yash ja mind huvitab arvutiteadus.' // kontrollime, kas mõlemad muutujatesse salvestatud sisu on samad või mitte, kui (a === b) {// helistamine lahenda lahendus () } else {// helistamine reject reject ()}}) lubadus. siis (function () {console.log ('Lubadus on lahendatud !!')}). catch (function () {console.log ('Lubadus lükati tagasi !!')})

Väljund:
Väljund- lubadused JavaScripti- Edureka

Selle JavaScripti lubadusi käsitleva artikli jätkamine

Näide 2:

var lubamine = uus Lubadus (funktsioon (lahenda, lükka tagasi) {// kahe muutuja algustamine täisarvu väärtusega const x = 11 + 2 const y = 26/2 // kontrollides, kas mõlemad muutujad on võrdsed või mitte, kui (x === y ) {// helistamine lahenda lahendus ()} muu {// helistamine keeldu tagasilükkamine ()}}) lubadus. siis (function () {console.log ('Lubadus on lahendatud !!')}). catch (function () {console.log ('Lubadus lükatakse tagasi !!')})

Väljund:

Selle JavaScripti lubadusi käsitleva artikli jätkamine

Näide 3:

var lubamine = uus Lubadus (funktsioon (lahenda, lükka tagasi) {const i = 'Tere' const a = 'Maailm' // kahe muutuja lisamine teise muutuja väärtuse salvestamiseks const j = i + a if ((i + a ) === j) {// helistamine lahenda lahendus ()} muu {// helistamine keeldu tagasilükk ()}}) lubadus. siis (function () {console.log ('Lubadus on lahendatud !!')}). catch (function () {console.log ('Lubadus lükatakse tagasi !!')})

Väljund:

Selle JavaScripti lubadusi käsitleva artikli jätkamine

Tarbijad lubadustes

Registreerimisfunktsioone on kaks:

siis ()

ringi robini ajastamise algoritm c-s

Kui lubadus on kas lahendatud või tagasi lükatud, siis pöördutakse () poole.

Parameetrid:

  • Kui lubadus on lahendatud, täidetakse esimene funktsioon ja saadakse tulemus.
  • Lubaduse tagasilükkamise korral käivitatakse teine ​​funktsioon ja ekraanile kuvatakse viga.

Süntaks:

.siis (funktsioon (tulemus) {// edukuse käsitsemine}, funktsioon (viga) {// vea käsitsemine})

Selle JavaScripti lubadusi käsitleva artikli jätkamine

Näide

Kui lubadus on lahendatud

// lubaduse lahendamine var lubadus = uus lubadus (funktsioon (lahenda, lükka tagasi) {lahenda ('Edukuse sõnum on siin kirjutatud!')}) lubadus .siis (funktsioon (eduMessageishere) {// õnnestumise käitlemise funktsioon käivitatakse console.log (successMessageishere)}, funktsioon (errorMessageishere) {console.log (errorMessageishere)})

Väljund:

Selle JavaScripti lubadusi käsitleva artikli jätkamine

Kui lubadus lükatakse tagasi

// lubaduse tagasilükkamine var lubamine = uus lubadus (funktsioon (lahenda, lükka tagasi) {lükkab ('tagasilükkamise teade on siin kirjutatud!')}) Luban. Siis (funktsioon (eduMessage) {konsool.log (edukuseMessage)}, funktsioon errorMessage) {// veatöötleja funktsioon käivitatakse console.log (errorMessage)})

Väljund:

Selle JavaScripti lubadusi käsitleva artikli jätkamine

Saak ( )

Alati, kui esineb mingisugune viga või lubadus lükatakse täitmise ajal tagasi, kutsutakse catch ().
Parameetrid:

pakettide kasutamine javas
  • Meetodis catch () edastatakse parameetrina ainult üks funktsioon.
  • See funktsioon on loodud vigade käsitlemiseks või tagasilükkamise lubamiseks.

Süntaks:

.catch (funktsioon (viga) {// käsitsemisviga})

Selle JavaScripti lubadusi käsitleva artikli jätkamine

Näide 1:

var lubamine = uus lubadus (funktsioon (lahenda, lükka tagasi) {lükkab ('lubadus lükatakse tagasi')}) luban. siis (funktsioon (edu) {konsool.log (edukus)}). püüd (funktsioon (viga) {// käivitatakse veakäitleja funktsioon console.log (tõrge)})

Väljund:

Selle JavaScripti lubadusi käsitleva artikli jätkamine

Näide 2:

var lubamine = uus lubadus (funktsioon (lahenda, lükka tagasi) {// tõrketeade viskab uue tõrke ('On mõni viga!')}) lubadus. siis (funktsioon (edu) {konsool.log (edu)}) .catch (funktsioon (viga) {// veakäitleja funktsioon käivitatakse console.log (tõrge)})

Väljund:

Selle JavaScripti lubadusi käsitleva artikli jätkamine

Näide 3:

var lubamine = uus lubadus (funktsioon (lahenda, lükka tagasi) {// tõrketeadet saab siin redigeerida viska uus tõrge ('tekkis viga!')}) lubadus. siis (funktsioon (Thissuccess) {console.log (Thissuccess)} ) .catch (function (Thiserror) {// veakäitleja funktsioon kutsus console.log (Thiserror)})

Väljund:

Rakendus:
1. Asünkroonsete sündmuste käsitlemine.
2. Asünkroonsete http-päringute käitlemine.

Nii oleme jõudnud selle artikli peatükki „Lubadused JavaScripti kohta”. Kui soovite rohkem teada saada, vaadake järgmist autor Edureka, usaldusväärne veebipõhine õppefirma. Edureka Java J2EE ja SOA koolitus- ja sertifitseerimiskursus on mõeldud selleks, et õpetada teid nii Java-põhimõistete kui ka edasijõudnute kontseptsioonide jaoks koos erinevate Java-raamistikega nagu Hibernate & Spring.

Kas teil on meile küsimus? Palun mainige seda selle ajaveebi kommentaaride jaotises ja võtame teiega ühendust niipea kui võimalik.