Dieser Artikel führt Sie durch das Promise-Objekt in Nodejs. Es hat einen gewissen Referenzwert. Freunde in Not können sich darauf beziehen. Ich hoffe, es wird für alle hilfreich sein.
Verwandte Empfehlungen: „nodejs-Tutorial“
1 Wofür wird Promise verwendet?
Unsere Anforderung besteht darin, asynchronen Code sofort auszuführen
Unser Ansatz besteht darin, die nächste asynchrone Anforderung in der Rückruffunktion auszuführen, nachdem die asynchrone Anforderung erfolgreich ist. Dies führt jedoch zur Rückrufhölle (Der Rückruf Die Funktion ist in der Rückruffunktion verschachtelt. Die Lesbarkeit des Codes ist gering und die Wartung ist unverändert, was den Leuten Angst macht
2. Promise-Workflow
es6-Syntax, es6.ruanyifeng.com
Diese Funktion hat als Parameter zwei weitere Parameter: Auflösung und Ablehnung. Diese beiden Parameter sind ebenfalls Funktionen, aber diese beiden Funktionen werden von der Javascript-Engine bereitgestellt, sodass Sie sie nicht selbst bereitstellen müssenDas Promise-Objekt ist ein Konstruktor, der zum Generieren von Promise-Instanzen verwendet wird
Nachdem die asynchrone Operation erfolgreich war, wird die Methode „reject()“ intern aufgerufen ruft die erste Parameterfunktion in then() auf. , erfüllt (erfolgreich) und abgelehnt (fehlgeschlagen)
Es gibt nur zwei Möglichkeiten für die Zustandsänderung des Promise-Objekts: von ausstehend nach erfüllt und von ausstehend nach abgelehnt.Nur das Ergebnis der asynchronen Operation kann den aktuellen Status bestimmen, und keine andere Operation kann diesen Status ändern
Wenn die asynchrone Operation erfolgreich ist (die Datei wurde erfolgreich gelesen), ändert sie sich von „Ausstehend“ (in Bearbeitung). ) ist erfüllt (erfolgreich);
Wenn der asynchrone Vorgang fehlschlägt (das Lesen der Datei schlägt fehl), wechselt er von „Ausstehend“ (in Bearbeitung) zu „Abgelehnt“ (fehlgeschlagen);
Wenn der Status ermittelt wurde, wird dies der Fall sein nicht Lassen Sie uns diesen Status erneut ändern
4. Versprechensfunktionen und Kapselung
Das Versprechen wird sofort nach der Erstellung ausgeführt
Schreiben Sie also keinen anderen Code in das Versprechen, sondern schreiben Sie diesen einfach asynchron Operation Der Code reicht aus
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
|
5. Richtige Schreibweise von Versprechen
Wie Versprechen die Rückrufhölle löst
-》Kettenprogrammierung löst
**Das Problem, das wir mit Versprechen lösen: lass asynchrone Operationen Es gibt Ordnung, und es kann keine Rückrufhölle geben**
Die Essenz der Reihenfolge asynchroner Vorgänge ist:Asynchrone Vorgänge sind eigentlich ungeordnet
Gib nach dem ein weiteres Versprechen in der Rückruffunktion zurück Wenn der asynchrone Vorgang erfolgreich ist, rufen Sie seine Methode then auf.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
|
6 alle( )
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
|
race
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
|
Weitere Programmierkenntnisse finden Sie unter: Programmiervideo! !
Das obige ist der detaillierte Inhalt vonErfahren Sie mehr über Promise-Objekte in Nodejs. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!