Løfter er mye brukte funksjoner i Javascript -programmeringsspråket. Løfter har en nøkkelrolle i JavaScript for å vente til utførelsen av spesifikke oppgaver er fullført. Det lar brukeren utføre neste oppgave etter å ha fullført en oppgave. Dette innlegget demonstrerer løftet om å vente ved å bruke Løse() Metode i JavaScript. Det er nyttig for tilbakeringingsfunksjoner som utfører et stykke kode basert på brukerbehov. Dessuten kan den administrere flytkontrollen av asynkrone hendelser, der parallelle hendelser kalles.
Hvorfor det kreves løfter i JavaScript?
JavaScript kan utføre en oppgave på et gitt tidspunkt på en sekvensiell måte. Imidlertid forårsaker koden parallelt noen problemer. For eksempel, hvis en bruker setter 5 sekunder for setTimeout () Metode, JavaScript vil utføre den neste delen av koden før du fullfører forrige oppgave. Derfor kreves løfter å vente til den nåværende oppgaven blir utført.
Arbeid av løfter i JavaScript
Et løfte er et JavaScript-basert objekt som returnerer en verdi etter å ha fullført eller fullført en asynkron oppgave. Den fullførte oppgaven refererer til løsningen for løsningsfunksjonen, mens den ufullstendige oppgaven indikerer avslagsfunksjonen samtale. Syntaksen er her ved å vurdere løftet med løsningsfunksjonssamtalen.
Syntaks
Love.Løs (verdi);
Syntaksen returnerer et løfte "gjenstand" som løser bortgangen verdi.
Ulike løftetilstander i JavaScript
Løftet skapes ved å bruke konstruktøren. Et løfte er et objekt som inneholder tre former, "oppfylt", “Avvist”, og "Avventer" og er beskrevet nedenfor:
Merk: Løftet brukes mest til asynkrone operasjoner. Men brukere kan avvise eller løse operasjonen ved å synkronisere.
La oss øve på forskjellige eksempler anses å vente på løftet med forskjellige tidsperioder.
Eksempel 1: Venter i 3 sekunder
Et eksempel blir fulgt av å bruke løftet om å vente på 3000 millisekunder i JavaScript.
Kode
konsoll.logg ('eksempel for å vente på at løfter blir løst');
const p1 = nytt løfte ((Løs, avvis) =>
setTimeout (() =>
konsoll.logg ('første løfte løst');
, 3000);
);
I denne koden:
Produksjon
Utgangen viser at en melding “Første løfte løst” vises etter 3 sekunder.
Eksempel 2: Bruke "async" og "venter" nøkkelord for å vente på et løfte
Et annet eksempel vurderes ved å bruke async og avvente Nøkkelord å vente på løfter i JavaScript. Koden er gitt nedenfor.
Kode
konsoll.logg ('Lover å bli løst');
async funksjonsinfo ()
const Promise = Nytt løfte (Løs =>
Resolve ('Velkommen til JavaScript'));
const txt = avventer løfte;
konsoll.logg (txt);
return txt;
info ()
I denne koden:
Produksjon
Utgangen returnerer en melding “Velkommen til JavaScript” ved å bruke løstmetoden for løft.
Eksempel 3: Vent i 2 sekunder med "async" og "vent" nøkkelord
Følgende kode føres til å vente på at løfter blir løst ved hjelp av async og avvente nøkkelord.
konsoll.logg ('Lover å bli løst');
async funksjon wait_tim ()
La P2 = avvente løfte;
konsoll.Log (P2);
La løfte = nytt løfte (Løs =>
setTimeout (() => Resolve ('JavaScript'), 2000);
);
wait_tim ();
Forklaringen på koden er som følger:
Produksjon
Utgangen viser at en melding “JavaScript” venter i 2 sekunder før du skriver ut på konsollen.
Konklusjon
JavaScript gir en Love.Løse() Metode for å vente på løfter og returnerer et løfteobjekt som løses ved å gi en gitt verdi. Denne artikkelen forklarer arbeidet med et Promise -objekt sammen med syntaks. Metoden er nyttig for å kontrollere strømmen av asynkrone hendelser, der parallelle hendelser kalles. Dessuten er det gitt mange eksempler for å vente på løftet ved å bruke setTimeout () metode.