Cum se implementează promisiuni în JavaScript?



Promisiunile din JavaScript sunt utilizate în principiu pentru a gestiona operațiile asincrone. Acest articol vă va ajuta să explorați în detaliu conceptul.

Promite În sunt utilizate în principiu pentru a gestiona operațiuni asincrone. O promisiune este un obiect care poate produce o singură valoare în viitor: fie o valoare rezolvată, fie o eroare.

Următoarele indicații vor fi tratate în acest articol,





Să începem cu acest articol despre Promisiuni în JavaScript

algoritmul Fibonacci c ++

Importanţă:

Promisiunile vin la îndemână atunci când există mai multe operațiuni asincrone de rezolvat. Înainte de a fi introduse promisiuni în JavaScript, au existat evenimente și funcții de apelare folosite pentru a gestiona operațiuni asincrone. Deoarece evenimentele nu sunt prea utile în cazul operațiunilor asincrone, acestea nu sunt preferate. Venind la callback, folosirea lor în multipli ar crea o astfel de mizerie încât era foarte dificil pentru oricine să înțeleagă codul.
Prin urmare, promisiunile sunt prima alegere a fiecărui coder pentru a gestiona operațiunile asincrone în cel mai simplu mod. Au funcții avansate care le fac mai ușor să gestioneze operațiunile decât apelul invers și evenimentele.



  • Promise face codul lizibil, ceea ce înseamnă că poate fi editat și de către codificatori și în etapa ulterioară a dezvoltării.
  • Există o manevrare mai bună pe tot parcursul operațiunilor asincrone în comparație cu callback și eveniment.
  • Tratarea avansată a erorilor este, de asemenea, considerată o caracteristică importantă.
  • Există un flux mult mai bun de definiție a controlului în asincron.

Continuăm cu acest articol despre Promisiuni în JavaScript

Tipul de state:

Îndeplinit: Legat de acele promisiuni care sunt realizate.
Respins: Legat de acele promisiuni care sunt respinse.
In asteptarea: Legat de acele promisiuni care sunt în așteptare, adică nici respinse, nici acceptate.
Stabilit: Legat de acele promisiuni care sunt îndeplinite sau respinse.

Continuăm cu acest articol despre Promisiuni în JavaScript



Crearea promisiunilor

O promisiune este creată folosind constructorul promisiunii.

Sintaxă:

var promisiune = promisiune nouă (funcție (rezolvați, respingeți) {// faceți ceva aici})

Parametri:
Constructorul promisiunii ia un argument, funcția de apel invers. Există două argumente în funcția de apelare, rezolvare sau respingere. Operațiile sunt efectuate în interiorul funcțiilor de apel invers, dacă totul a mers bine, atunci apelul se rezolvă, altfel apelul devine respins.

Continuăm cu acest articol despre Promisiuni în JavaScript

Exemplul 1:

var promise = new Promise (funcție (rezolvare, respingere) {/ * declararea și definirea a două variabile de tip const date cu același conținut. * / const a = 'Bună ziua! Numele meu este Yash și mă interesează informatica.' const b = 'Bună ziua! Numele meu este Yash și sunt interesat de informatică.' // verificarea dacă ambele conținut stocate în variabile sunt aceleași sau nu dacă (a === b) {// apelare resolve resolve () } else {// apelare a respinge respinge ()}}) promite. then (function () {console.log ('Promise Resolved !!')}). catch (function () {console.log ('Promise Respins !!')})

Ieșire:
Ieșire- Promisiuni în JavaScript- Edureka

Continuăm cu acest articol despre Promisiuni în JavaScript

Exemplul 2:

var promisiune = promisiune nouă (funcție (rezolvare, respingere) {// inițializarea a două variabile cu valori întregi const x = 11 + 2 const y = 26/2 // verificarea dacă ambele variabile sunt egale sau nu dacă (x === y ) {// apelare resolve resolve ()} else {// apelare refuzare respingere ()}}) promisiune. then (function () {console.log ('Promisiunea este rezolvată !!')}). catch (function () {console.log ('Promisiunea este respinsă!')})

Ieșire:

Continuăm cu acest articol despre Promisiuni în JavaScript

Exemplul 3:

var promisiune = promisiune nouă (funcție (rezolvare, respingere) {const i = 'Bună ziua' const a = 'Lumea' // efectuarea adăugării a două variabile pentru a stoca valoarea într-o altă variabilă const j = i + a if ((i + a ) === j) {// apelare resolve solve ()} else {// apelare refuzare respingere ()}}) promisiune. then (function () {console.log ('Promisiunea este rezolvată !!')}). catch (function () {console.log ('Promisiunea este respinsă!')})

Ieșire:

Continuăm cu acest articol despre Promisiuni în JavaScript

Consumatorii în promisiuni

Există două funcții de înregistrare:

apoi()

Când o promisiune este fie rezolvată, fie respinsă, atunci () este invocat.

Parametri:

  • Dacă promisiunea este rezolvată, prima funcție este executată și se primește un rezultat.
  • Dacă promisiunea este respinsă, a doua funcție este executată și o eroare este afișată pe ecran.

Sintaxă:

.then (funcție (rezultat) {// gestionarea succesului}, funcție (eroare) {// gestionarea erorii})

Continuăm cu acest articol despre Promisiuni în JavaScript

Exemplu

Când promisiunea este rezolvată

// rezolvarea promisiunii var promise = new Promisiunea (funcția (rezolva, respinge) {resolve ('Mesajul de succes este scris aici!')}) promisiune. atunci (funcția (successMessageishere) {// funcția de gestionare a succesului este invocată console.log (successMessageishere)}, funcție (errorMessageishere) {console.log (errorMessageishere)})

Ieșire:

Continuăm cu acest articol despre Promisiuni în JavaScript

Când promisiunea este respinsă

// Respingerea promisiunii var promisiune = promisiune nouă (funcție (rezolvă, respinge) {respinge ('Mesajul de respingere este scris aici!')}) Promisiune. Atunci (funcție (succesMessage) {console.log (succesMessage)}, funcție ( errorMessage) {// funcția de gestionare a erorilor este invocată console.log (errorMessage)})

Ieșire:

Continuăm cu acest articol despre Promisiuni în JavaScript

Captură ( )

la ce se folosește marioneta

Ori de câte ori există un fel de eroare sau promisiunea este respinsă în timpul execuției, se invocă catch ().
Parametri:

  • O singură funcție este trecută ca parametru în metoda catch ().
  • Această funcție este construită pentru a gestiona erorile sau promite respingeri.

Sintaxă:

.catch (funcție (eroare) {// eroare de manipulare})

Continuăm cu acest articol despre Promisiuni în JavaScript

Exemplul 1:

var promisiune = promisiune nouă (funcție (rezolvare, respingere) {respingere („Promisiunea este respinsă”)}) promisiune. atunci (funcție (succes) {console.log (succes)}) .catch (funcție (eroare) {// funcția de gestionare a erorilor este invocată console.log (eroare)})

Ieșire:

Continuăm cu acest articol despre Promisiuni în JavaScript

Exemplul 2:

var promisiune = promisiune nouă (funcție (rezolvare, respingere) {// mesaj de eroare aruncă o nouă eroare ('Există o eroare!')}) promisiune .then (funcție (succes) {console.log (succes)}) .catch (funcție (eroare) {// funcția de gestionare a erorilor este invocată console.log (eroare)})

Ieșire:

Continuăm cu acest articol despre Promisiuni în JavaScript

Exemplul 3:

var promisiune = promisiune nouă (funcție (rezolvați, respingeți) {// mesajul de eroare poate fi editat aici aruncați o nouă eroare ('s-a produs o eroare!')}) promisiune. atunci (funcția (Thissuccess) {console.log (Thissuccess)} ) .catch (funcție (Thiserror) {// funcția de gestionare a erorilor invocată console.log (Thiserror)})

Ieșire:

Cerere:
1. Gestionarea evenimentelor asincrone.
2. Gestionarea cererilor http asincrone.

Astfel am ajuns la sfârșitul acestui articol despre „Promisiunile în JavaScript”. Dacă doriți să aflați mai multe, consultați de Edureka, o companie de învățare online de încredere. Cursul de formare și certificare Java J2EE și SOA al Edureka este conceput pentru a vă instrui atât pentru conceptele Java de bază, cât și pentru cele avansate, împreună cu diverse cadre Java, cum ar fi Hibernate & Spring.

Ai o întrebare pentru noi? Vă rugăm să o menționați în secțiunea de comentarii a acestui blog și vă vom răspunde cât mai curând posibil.