W JavaScript obietnice są łączone razem w celu zarządzania przepływem wykonania w programie. Obietnice łączenia są również przydatne, gdy musisz wykonać serię funkcji asynchronicznych, w których każda z nich zależy od wcześniejszej funkcji. Obejmuje również propagacja błędów.
W tym spisie omówi procedurę Obietnice łańcucha W JavaScript za pomocą odpowiednich przykładów. A więc zacznijmy!
Jak stworzyć obietnicę w JavaScript
Możesz użyć „Obietnica()„Konstruktor do tworzenia obiektu obietnicy w twoim programie:
niech obietnica = nowa obietnica (funkcja (rozdzielcz, odrzuć)W JavaScript „The„Obietnica()”Konstruktor akceptuje„funkcjonować()„Jako argument, który zawiera dwa argumenty:„rozstrzygać()" I "odrzucić()". Funkcja determina () zostanie wywołana, jeśli obietnica zostanie pomyślnie zwrócona; W przeciwnym razie funkcja odrzucania () zostanie wywołana.
Przykład: Jak stworzyć obietnicę w JavaScript
W ramach podanego poniżej programu utworzymy obiekt obietnicy o nazwie „wartość numeru”Korzystając z konstruktora obietnicy (). Zgodnie z podaną składnią dodaliśmy parametry „rozstrzygać()" I "odrzucić()„Dla naszego obiektu:
Wartość „numer" jest ustawione na "PRAWDA„Więc w tym przypadku obietnica zostanie rozwiązana:
konsola.log (numer numer);Wykonanie dostarczonego programu zwróci obiekt obietnicy ze swoim stanem:
Jak łańcuch obietnice w JavaScript
Jeśli utknąłeś w sytuacji, w której musisz wykonać wiele zadań asynchronicznych w sekwencji, wówczas łączenie obietnicy może pomóc w tym względzie.
Dzięki łączeniu obietnic możesz określić operacje po rozwiązaniu konkretnej obietnicy. W tym celu JavaScript „Następnie()”,„złapać()", I "Wreszcie()„Zastosowane są metody.
Jak łańcuch obietnice w JavaScript za pomocą metody () ()
JavaScript „Następnie()”Metoda jest stosowana do dołączania funkcji obsługi do obietnicy utworzonego obietnicy. Ta metoda obejmuje „Onfulfild" I "On -Reject„Parametry, umożliwiające obsługa scenariuszy, w których obietnice są spełnione lub nieudane.
Składnia metody JavaScript, a następnie ()
obiecyt.Następnie (Onfulfilled, On -Rejected);Tutaj "Onfulfild" I "On -Reject”Jest argumentem„Następnie()" metoda. Ta metoda zwróci obiekt obietnicy z wynikiem funkcji obsługi.
Przykład: jak obiecuje obietnice w JavaScript za pomocą metody () ()
Przede wszystkim stworzymy obiekt obietnicy o nazwie „wartość numeru”Z pomocą konstruktora obietnicy ():
Następnie wykorzystamy „Następnie()„Metoda łączenia funkcji”SuccessValue ()" I "SuccessValue1 ()", I "SuccessValue2 ()”Z„produkt" Jak "Onfulfild„Argument do obietnicy:
wartość numeruDodany łańcuch metod () zostanie wykonany po spełnieniu określonej obietnicy:
Jak łańcuch obietnice w JavaScript za pomocą metody catch ()
JavaScript „złapać()”Metoda obsługuje odrzucone obietnice lub przypadek, gdy wystąpi błąd. Uważa się, że dobrą praktyką jest odrzucenie obietnicy, a nie jawne generowanie błędu.
Przykład: jak obiecuje obietnice w JavaScript za pomocą metody catch ()
Teraz postaramy się dodać metodę catch () w poprzednim przykładzie:
Poniżej zbierane „złapać()„Metoda zostanie wykonana, jeśli wystąpi jakikolwiek błąd:
.złapać(Jak widać z wyjścia, że „wartość numeru„Obietnica jest odrzucona i„złapać()„Metoda jest następnie wykorzystywana do obsługi błędu:
Jak wreszcie używać metody z obietnicami
„„Wreszcie()„Metoda jest stosowana w sytuacji, w której musisz wykonać jakiś kod niezależnie od tego, czy dodana obietnica jest spełniona, czy nie.
Przykład: jak wreszcie używać metody z obietnicami
Dodaliśmy JavaScript „Wreszcie()”W poniższym przykładzie, który uruchomi się obietnicą, jest odrzucona lub spełniona:
Powyższe dane wyjściowe oznacza, że kod dodany w „Wreszcie()„Metoda jest wykonywana pomyślnie, a obietnica jest rozwiązana.
Wniosek
Za pomocą Następnie() I złapać() metody, możesz łańcuch obietnice w JavaScript. Metoda następnie () jest wykorzystywana do określenia operacji, którą należy wykonać po spełnieniu dodanej obietnicy, podczas gdy metoda catch () obsługuje przypadek, gdy obietnica zostanie odrzucona. W tym spisie omówiono procedurę obietnic łańcuchowych w JavaScript za pomocą metod () i catch ().