Heim  >  Artikel  >  Web-Frontend  >  So verwenden Sie Async und Wait, um eine asynchrone Verarbeitung in JavaScript durchzuführen

So verwenden Sie Async und Wait, um eine asynchrone Verarbeitung in JavaScript durchzuführen

不言
不言Original
2019-01-10 16:47:152487Durchsuche

Async/await ist eine Hauptfunktion, die die asynchrone Verarbeitung von Promise präziser und effektiver beschreiben kann. Die asynchrone Verarbeitung ist ein Mechanismus, der die nächste Verarbeitung sofort ausführen kann, ohne auf das Verarbeitungsergebnis zu warten .

So verwenden Sie Async und Wait, um eine asynchrone Verarbeitung in JavaScript durchzuführen

Im Fall von Promise verwenden wir „then“, um eine Verbindung herzustellen, sodass es zu einem sehr eintönigen Code wird.

Wenn Sie beispielsweise „then“ verwenden, um mehrere Promise-Prozesse auszuführen, würde das so aussehen:

getDate()
.then(function(data) {
    return getYear(data)
}) .then(function(year) {
    return getSomething(year)
}) .then(function(item) {
    getAnotherThing(item)
})

In manchen Fällen ist es besser, Promise.all() zu verwenden, Aber Sie müssen es dann noch verwenden.

Wenn wir lernen, wie man async/await verwendet, können wir die Effizienz verbessern.

Wie verwende ich async/await?

Werfen wir zunächst einen Blick auf die grundlegende Syntax

async kann eine Funktion definieren, und Sie können eine asynchrone Verarbeitung durchführen, indem Sie sie einfach vor die Funktion schreiben.

async function() { }

Wenn Sie asynchron auf diese Weise schreiben, gibt diese Funktion Promise zurück.

Darüber hinaus ist „await“ ein Operator, der vorübergehend stoppt, bevor das Ergebnis der Promise-Verarbeitung zurückgegeben wird.

await Promise处理

Durch einfaches Schreiben von „await“ vor die Funktion, die die Promise-Verarbeitung beschreibt, wird diese angehalten, bis das Ergebnis zurückgegeben wird.

Bitte beachten Sie jedoch, dass „await“ nur für asynchron definierte Funktionen verwendet werden kann!

Aus diesem Grund werden async/await oft paarweise verwendet.

Wie schreibe ich eine asynchrone Verarbeitung mit async/await?

Nehmen Sie zunächst die folgende Promise-Verarbeitung an.

function myPromise(num) {
  return new Promise(function(resolve) {
 
    setTimeout(function() { resolve(num * num) }, 3000)
 
  })
}

In diesem Beispiel wird deutlich, dass die Verarbeitung, die bewusst 3 Sekunden dauert, im Promise aufgezeichnet wird.

Wenn Sie async/await ohne verwenden, dann sieht es so aus.

async function myAsync() {
    var result = await myPromise(10);
    console.log(result);
}

Das Ausführungsergebnis ist: 100

In diesem Beispiel wird eine asynchrone Verarbeitungsfunktion durch Zuweisung von async erstellt.

Beschreibung Die Promise-Verarbeitung innerhalb der Funktion wird vor myPromise() abwarten

Dadurch wird vorübergehend auf den Promise-Prozess gewartet, der das Ergebnis nach 3 Sekunden zurückgibt. Sobald das Ergebnis vorliegt, wird der Die Verarbeitung wird fortgesetzt.

Im Ausführungsergebnis kann der Wert 100 multipliziert mit dem angegebenen Parameter 10 erhalten werden.

Das obige ist der detaillierte Inhalt vonSo verwenden Sie Async und Wait, um eine asynchrone Verarbeitung in JavaScript durchzuführen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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