I JavaScript er løfter lenket sammen for å håndtere utførelsesstrømmen i et program. Chaining Promises er også nyttig når du må utføre en serie asynkrone funksjoner, der hver er avhengig av den tidligere funksjonen. Det inkluderer også feilutbredelse.
Denne oppskrivningen vil diskutere prosedyren for Kjede løfter i JavaScript ved hjelp av passende eksempler. Så la oss starte!
Hvordan lage et løfte i JavaScript
Du kan bruke “Love()”Konstruktør for å lage et Promise -objekt i programmet ditt:
La løfte = nytt løfte (funksjon (Løs, avvise)I JavaScript, "Love()”Konstruktør godtar en“funksjon()”Som et argument som videre har to argumenter:“Løse()”Og“avvis ()“. Resolve () -funksjonen vil bli påberopt hvis løftet blir returnert med hell; Ellers vil avslaget () -funksjonen bli kalt.
Eksempel: Hvordan lage et løfte i JavaScript
I det undergitte programmet vil vi lage et Promise-objekt som heter “NumberValue”Ved å bruke løftet () konstruktøren. I følge den gitte syntaks har vi lagt til parametrene “Løse()”Og“avvis ()”For vårt løfteobjekt:
Verdien av “Antall" er satt til "ekte”Så i dette tilfellet vil løftet bli løst:
konsoll.Logg (NumberValue);Utførelse av det medfølgende programmet vil returnere Promise -objektet med staten:
Hvordan kjede løfter i JavaScript
Hvis du sitter fast i en situasjon der du trenger å utføre flere asynkrone oppgaver i en sekvens, kan Promise Chaining hjelpe deg i denne forbindelse.
Med Promise Chaining kan du spesifisere operasjonene etter at det aktuelle løftet er løst. For dette formålet, JavaScript “deretter()”,“å fange()”, Og“endelig()”Metoder brukes.
Hvordan kjede løfter i JavaScript ved hjelp av da () -metoden
JavaScript “deretter()”Metode brukes for å legge til håndterfunksjonen til det opprettede Promise -objektet. Denne metoden omfatter “onfulfilled”Og“onrejected”Parametere, slik at du kan håndtere scenariene der løfter er oppfylt eller mislykket.
Syntaks av JavaScript Then () Metode
PromiseObject.Deretter (påmeldt, onrejisert);Her “onfulfilled”Og“onrejected”Er argumentet om“deretter()”Metode. Denne metoden vil returnere et løfteobjekt med resultatet av behandlerfunksjonen.
Eksempel: Hvordan kjede løfter i JavaScript ved hjelp av da () -metoden
Først av alt vil vi lage et Promise -objekt som heter “NumberValue”Ved hjelp av løftet () konstruktør:
Etter det vil vi bruke “deretter()”Metode for å lenke funksjonene”SuccessValue ()”Og“SuccessValue1 ()”, Og“SuccessValue2 ()" med "produkt" som "onfulfilled”Argument til løftet:
NumberValueDen ekstra kjeden av da () -metodene vil bli utført når det spesifiserte løftet er oppfylt:
Hvordan kjede løfter i JavaScript ved hjelp av Catch () -metoden
JavaScript “å fange()”Metode håndterer de avviste løftene eller saken når en feil oppstår. Det anses som en god praksis å avvise et løfte i stedet for å generere en feil eksplisitt.
Eksempel: Hvordan kjede løfter i JavaScript ved hjelp av Catch () -metode
Nå vil vi prøve å legge til en fangst () -metode i forrige eksempel:
Det undergitte “å fange()”Metoden vil bli utført hvis det oppstår noen feil:
.å fange(Som du kan se fra utgangen at “NumberValue”Løftet blir avvist, og”å fange()”Metoden brukes deretter for å håndtere feilen:
Hvordan du bruker endelig () metode med løfter
“endelig()”Metoden brukes i en situasjon der du må utføre en viss kode uavhengig av om det ekstra løftet er oppfylt eller ikke.
Eksempel: Hvordan bruke endelig () metode med løfter
Vi har lagt til JavaScript “endelig()”I det følgende eksemplet som vil kjøre enten blir løftet avvist eller oppfylt:
Den ovennevnte utgangen betyr at koden lagt til i "endelig()”Metoden utføres vellykket, og løftet blir løst.
Konklusjon
Ved hjelp av deretter() og å fange() Metoder, du kan kjede løfter i JavaScript. Den da () -metoden brukes til å spesifisere operasjonen som må gjøres når det ekstra løftet er oppfylt, mens fangst () -metoden håndterer saken når løftet blir avvist. Denne oppskrivningen diskuterte prosedyren for å kjede løfter i JavaScript ved bruk av daværende () og fangst () -metoder.