Hva er løfter uansett?
Asynkron kode kan håndteres løfter. De tar en funksjon kjent som Executor som en parameter. Når det opprettes et løfte, kjører eksekutoren automatisk asynkront og returnerer en verdi i tilfelle den blir oppfylt ellers returnerer den grunnen til avvisning:
La eksempel_promise = newPromise ((Løs, avvis) =>Asynkron natur av løfter:
La eksempel_promise = newPromise ((Løs, avvis) =>Hvordan bruke løfte.Race () Metode?
Gi en iterable av løfter til løftet.Race () Metode og få sin returverdi i variabel:
La prom1 = newPromise ((Løs, avvis) =>I dette eksemplet hadde vi to løfter. Det første løftet ble løst etter 500 ms og det andre løftet ble avvist like etter 250 sekunder. Ettersom det andre løftet var det første som ble løst eller avvist, ble det returnert av løftet.Race () Metode.
Hvis argumentet gikk til løftet.Race () Metode er en tom iterable, da vil metoden gi et evigløft for alltid i påvente:
La temp = løfte.løp([]);Hvis argumentet er iterable har noen ikke-fremmede verdier eller løfter som allerede er oppfylt eller avvist, vil metoden nøye seg med den første verdien i matrisen:
La P1 = NewPromise ((Løs, avvis) =>Love.Race () Metode Sjekk for både løste og avviste løfter. Denne metoden har også et annet alternativ som er løftet.hvilken som helst () metode som kan brukes til å bare sjekke for de oppfylte løftene.
Konklusjon
Love.Race () Metode brukes for å få det første løftet som enten er oppfylt eller avvist fra en iterable av løfter. Løftet som er oppfylt eller avvist det tidligste er lovens returverdi.løp(). Oppskrivningen ga en grundig innsikt i løftet.Race () Metode.