Heim > Web-Frontend > Front-End-Fragen und Antworten > Was sind die drei Zustände der asynchronen ES6-Anfrage?

Was sind die drei Zustände der asynchronen ES6-Anfrage?

青灯夜游
Freigeben: 2023-02-14 13:46:05
Original
2264 Leute haben es durchsucht

es6 asynchrone Anfrage hat drei Zustände: 1. ausstehend (Wartezustand), dann wird kein Fang ausgelöst 2. erfüllt (erfüllter Zustand), wenn die Lösung aktiv zurückgerufen wird, befindet sie sich in diesem Zustand und dann( ) wird zurückgerufen ;3. Reject (Ablehnungsstatus) löst die nachfolgende Catch-Callback-Funktion aus.

Was sind die drei Zustände der asynchronen ES6-Anfrage?

Die Betriebsumgebung dieses Tutorials: Windows 7-System, ECMAScript Version 6, Dell G3-Computer.

Promise ist eine Lösung für die asynchrone Programmierung:

1. Wird hauptsächlich für asynchrone Berechnungen verwendet.

2. Asynchrone Operationen können in die Warteschlange gestellt, in der gewünschten Reihenfolge ausgeführt werden und die erwarteten Ergebnisse zurückgeben.

3 zwischen Objekten hilft uns beim Umgang mit Warteschlangen

Versprechen hat drei Zustände:

1, ausstehender [ausstehender] Anfangszustand

2, erfüllt [Implementierung] Vorgang erfolgreich

3, abgelehnt [abgelehnt] ] Vorgang fehlgeschlagen

Wann Wenn sich der Versprechensstatus ändert, wird die Antwortfunktion in then() ausgelöst, um die nachfolgenden Schritte zu verarbeiten.

Der Status des Promise-Objekts ändert sich. Sobald der Status von zwei Promise geändert wird, gibt es keine Änderungen: von „Ausstehend“ zu „Erfüllt“

von „Ausstehend“ zu „Abgelehnt“.

Solange diese beiden Situationen auftreten, wird der Status gefestigt und wird sich nicht mehr ändern.

Was sind die drei Zustände der asynchronen ES6-Anfrage?

Dann und fangen Sie die Details zum Änderungsstatus ab.

Sehen Sie sich das Bild unten an

Was sind die drei Zustände der asynchronen ES6-Anfrage?

Wenn ein Fehler gemeldet wird, wird das Versprechen im Versprechenstatus zurückgegeben und der Catch-Rückruf ausgelöst. Solange ein Fehler vorliegt, wird er später nicht ausgeführt. Catch wird ausgeführt.

Was sind die drei Zustände der asynchronen ES6-Anfrage?

Siehe unten Wenn ein Fehler-Promise-Objekt ausgelöst wird, befindet es sich im Ablehnungsstatus

Frage 1:

Drucken Sie 1 3 der Reihe nach aus, 2 wird nicht gedruckt, da der Fang nicht ausgeführt wird (das Versprechen von Was sind die drei Zustände der asynchronen ES6-Anfrage?.then befindet sich im Auflösungszustand. Fang wird nicht ausgeführt

)


Frage 2: Zurückgeben 1 2 3, weil beim Drucken 1 ein Fehlerobjekt ausgelöst wurde. Das zurückgegebene Objekt ist das Versprechen im Ablehnungsstatus und wechselt in den Ablehnungsstatus, aber .catch befindet sich im Auflösungsstatus, sodass .then erneut ausgeführt wird. und was schließlich zurückgegeben wird, ist ein Versprechen im aufgelösten Zustand.

Was sind die drei Zustände der asynchronen ES6-Anfrage?

Promise.all(iterator)Promise.all([
    new Promise((resolve,reject)=>{
      setTimeout(()=>{
        resolve('result1')
      },2000)
    }),

    new Promise((resolve,reject)=>{
        setTimeout(()=>{
            resolve('result2')
          },1000)
    })]).then(results =>{
    results[0]
    results[1]
    console.log(results)})
Nach dem Login kopieren
【Empfohlenes Lernen:

Javascript-Tutorial für Fortgeschrittene

Das obige ist der detaillierte Inhalt vonWas sind die drei Zustände der asynchronen ES6-Anfrage?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage