Løfter i brukes i utgangspunktet til å håndtere asynkrone operasjoner. Et løfte er et objekt som kan produsere en enkelt verdi i fremtiden: enten en løst verdi eller en feil.
Følgende tips vil bli dekket i denne artikkelen,
- Betydning
- Typer stater
- Opprettelse av løfter
- Eksempel 1 for opprettelse av løfter
- Eksempel 2 for Opprettelse av løfter
- Eksempel 3 for opprettelse av løfter
- Forbrukere i løfter i da ()
- Et eksempel på når løftet løses
- Et eksempel på når løftet blir avvist
- Forbrukerne av løfter fanger ()
- Eksempel 1 for forbrukere av løfter
- Eksempel 2 for forbrukere av løfter
- Eksempel 3 for forbrukere av løfter
La oss komme i gang med denne artikkelen om løfter i JavaScript
Betydning:
Løftene kommer til nytte når det er flere asynkrone operasjoner å håndtere. Før løfter ble introdusert i JavaScript, var det hendelser og tilbakekallingsfunksjoner som ble brukt til å håndtere asynkrone operasjoner. Siden hendelser ikke er mye nyttige i tilfelle asynkrone operasjoner, foretrekkes de ikke. Å komme tilbake, ved å bruke dem i flere, ville skape et slikt rot at det var veldig vanskelig for noen å forstå koden.
Derfor er løfter førstevalget til hver koder for å håndtere asynkrone operasjoner på den enkleste måten. De har avanserte funksjoner som gjør det enkelt for dem å håndtere operasjonene enn tilbakeringing og hendelser.
- Promises gjør koden lesbar, noe som betyr at den også kan redigeres av koderne på senere utviklingsstadium.
- Det er bedre håndtering gjennom de asynkrone operasjonene sammenlignet med tilbakeringing og hendelse.
- Avansert feilhåndtering blir også ansett som en viktig funksjon.
- En mye bedre flyt av kontrolldefinisjon i asynkron er der.
Fortsetter med denne artikkelen om løfter i JavaScript
Type stater:
Oppfylt: Relatert til de løftene som lykkes.
Avvist: Relatert til de løftene som blir avvist.
Avventer: Relatert til de løftene som venter, dvs. verken avvist eller akseptert.
Bosatte seg: Relatert til løftene som blir oppfylt eller avvist.
Fortsetter med denne artikkelen om løfter i JavaScript
c ++ Fibres rekursjon
Opprettelse av løfter
Et løfte opprettes ved hjelp av løftekonstruktør.
Syntaks:
var løfte = nytt løfte (funksjon (løse, avvis) {// gjør noe her})
Parametere:
Promise konstruktør tar ett argument, tilbakeringingsfunksjon. Det er to argumenter i tilbakeringingsfunksjonen, løse eller avvise. Operasjoner utføres inne i tilbakeringingsfunksjonene. Hvis alt gikk bra, løser samtalen ellers blir samtalen avvist.
Fortsetter med denne artikkelen om løfter i JavaScript
Eksempel 1:
var løfte = nytt løfte (funksjon (løse, avvise) {/ * erklære og definere to variabler av const datatype med samme innhold. * / const a = 'Hei! Jeg heter Yash og jeg er interessert i datavitenskap.' const b = 'Hei! Mitt navn er Yash og jeg er interessert i datalogi.' // sjekker om både innholdet som er lagret i variabler er likt eller ikke hvis (a === b) {// ringer løser løse () } annet {// kaller avvis avvis ()}}) løfte. deretter (funksjon () {console.log ('Promise Resolved !!')}). catch (function () {console.log ('Promise Avvist !!')})
Produksjon:
Fortsetter med denne artikkelen om løfter i JavaScript
Eksempel 2:
var løfte = nytt løfte (funksjon (løse, avvis)) {// initialisere to variabler med heltallverdier const x = 11 + 2 const y = 26/2 // sjekke om begge variablene er like eller ikke hvis (x === y ) {// ringer løser løse ()} annet {// ringer avviser avviser ()}}) løfte. deretter (function () {console.log ('Promise is Resolved !!')}). catch (function () {console.log ('Løftet er avvist !!')})
Produksjon:
Fortsetter med denne artikkelen om løfter i JavaScript
Eksempel 3:
var løfte = nytt løfte (funksjon (løse, avvise) {const i = 'Hello' const a = 'World' // utfører tillegg av to variabler for å lagre verdi i en annen variabel con j = i + a hvis ((i + a ) === j) {// ringer løser løse ()} annet {// ringer avviser avviser ()}}) løfte. deretter (function () {console.log ('Promise is Resolved !!')}). catch (function () {console.log ('Løftet er avvist !!')})
Produksjon:
Fortsetter med denne artikkelen om løfter i JavaScript
Forbrukere i løfter
Det er to registreringsfunksjoner:
deretter()
Når et løfte enten løses eller avvises, påkalles ().
Parametere:
- Hvis løftet løses, utføres den første funksjonen og resultatet mottas.
- Hvis løftet avvises, utføres den andre funksjonen og en feil vises på skjermen.
Syntaks:
.then (funksjon (resultat) {// håndteringssuksess}, funksjon (feil) {// håndtering av feilen})
Fortsetter med denne artikkelen om løfter i JavaScript
Eksempel
Når løftet blir løst
// løsning av løfte var løfte = nytt løfte (funksjon (løse, avvis) {løse ('Suksessmelding er skrevet her!')}) løfte. så (funksjon (successMessageishere) {// suksesshåndteringsfunksjon påkalles console.log (successMessageishere)}, funksjon (errorMessageishere) {console.log (errorMessageishere)})
Produksjon:
Fortsetter med denne artikkelen om løfter i JavaScript
Når løftet blir avvist
// Avslag på løfte var løfte = nytt løfte (funksjon (løse, avvise) {avvise ('Avvisningsmelding er skrevet her!')}) Løfte. Så (funksjon (successMessage) {console.log (successMessage)}, funksjon ( errorMessage) {// feilbehandlerfunksjon påkalles console.log (errorMessage)})
Produksjon:
Fortsetter med denne artikkelen om løfter i JavaScript
Å fange ( )
Hver gang det er en slags feil eller løftet blir avvist i løpet av utførelsestiden, blir fangst () påkalt.
Parametere:
- Bare en funksjon sendes som parameter i fangst () -metoden.
- Denne funksjonen er bygget for å håndtere feil eller love avslag.
Syntaks:
.catch (funksjon (feil) {// håndteringsfeil})
Fortsetter med denne artikkelen om løfter i JavaScript
Eksempel 1:
var løfte = nytt løfte (funksjon (løse, avvis) {avvis ('Løfte er avvist')}) løfte. deretter (funksjon (suksess) {konsoll.logg (suksess)}). fangst (funksjon (feil) {// feilhåndteringsfunksjonen blir påkalt console.log (error)})
Produksjon:
Fortsetter med denne artikkelen om løfter i JavaScript
Eksempel 2:
var løfte = nytt løfte (funksjon (løse, avvis) {// feilmelding kaste ny feil ('Det er noe feil!')}) løfte. så (funksjon (suksess) {konsoll.log (suksess)}). fangst (funksjon (feil) {// feilbehandlingsfunksjon påkalles console.log (feil)})
Produksjon:
Fortsetter med denne artikkelen om løfter i JavaScript
Eksempel 3:
var løfte = nytt løfte (funksjon (løse, avvis) {// feilmelding kan redigeres her kast ny feil ('noen feil oppstod!')}) løfte. så (funksjon (Thissuccess) {console.log (Thissuccess)} ) .catch (funksjon (Thiserror) {// feilhåndteringsfunksjon påkalt console.log (Thiserror)})
Produksjon:
Applikasjon:
1. Håndtering av asynkrone hendelser.
2. Håndtering av asynkrone http-forespørsler.
Dermed har vi kommet til en slutt på denne artikkelen om ‘Promises in JavaScript’. Hvis du ønsker å lære mer, sjekk ut av Edureka, et pålitelig online læringsfirma. Edurekas Java J2EE- og SOA-opplæring og sertifiseringskurs er designet for å trene deg for både kjerne- og avanserte Java-konsepter sammen med forskjellige Java-rammer som Hibernate & Spring.
Har du et spørsmål til oss? Vennligst nevn det i kommentarfeltet på denne bloggen, så kommer vi tilbake til deg så snart som mulig.