So verwenden Sie asynchrone Methoden für die asynchrone Programmierung in Node.js

PHPz
Freigeben: 2023-04-17 15:24:45
Original
867 Leute haben es durchsucht

Node.js ist eine JavaScript-Laufzeitumgebung, die auf der Chrome V8-JavaScript-Engine basiert. Sie kann nicht blockierende und ereignisgesteuerte E/A-Vorgänge implementieren und wird daher häufig in der Webentwicklung verwendet. In Node.js ist auch die Verwendung asynchroner Methoden sehr wichtig. Durch asynchrone Methoden können Datenoperationen und Netzwerkanfragen effizienter durchgeführt werden und in großen Webanwendungen enorme Leistungsvorteile erzielt werden. In diesem Artikel wird erläutert, wie Sie die asynchrone Methode für die asynchrone Programmierung in Node.js verwenden.

1. Was ist eine asynchrone Methode? In Node.js werden asynchrone Vorgänge durch Rückruffunktionen implementiert. Die asynchrone Methode beginnt mit der Ausführung, nachdem die Anforderung empfangen wurde, und blockiert nicht die Ausführung des nachfolgenden Codes. Wenn der asynchrone Vorgang endet, wird die Rückruffunktion ausgeführt und das Ergebnis zur weiteren Verarbeitung an die Rückruffunktion übergeben.

In Node.js verwendet der Vorgang zum Lesen einer Datei beispielsweise normalerweise die readFile-Methode des fs-Moduls und verwendet eine Rückruffunktion, um die gelesenen Daten zu verarbeiten.

const fs = require('fs');

fs.readFile('test.txt', (err, data) => {
    if (err) throw err;
    console.log(data);
});
Nach dem Login kopieren

Der obige Code ist eine asynchrone Methode. Nach dem Lesen der Daten wird eine Rückruffunktion ausgeführt, um die Daten zu verarbeiten. Wenn wir jedoch mehrere asynchrone Methoden kontinuierlich aufrufen müssen, wie stellen wir dann deren Ausführungsreihenfolge und Ergebnisverarbeitung sicher? Zu diesem Zeitpunkt müssen Sie die asynchrone Methode verwenden.

async ist ein Prozesssteuerungstool für asynchrone Vorgänge, das die Ausführung mehrerer asynchroner Vorgänge in einer bestimmten Reihenfolge ermöglicht und Ausnahmen während der Ausführung asynchroner Vorgänge behandeln kann. Durch Async können nicht nur asynchrone Methoden der Reihe nach ausgeführt werden, sondern auch der Code prägnanter und verständlicher gestaltet werden.

2. Gängige Methoden in async

async.waterfall-Methode
  1. async.waterfall-Methode besteht darin, mehrere asynchrone Operationen nacheinander auszuführen und das Ergebnis einer asynchronen Operation an die nächste asynchrone Operation zu übergeben. Seine Verwendung ist wie folgt:
async.waterfall([
    (callback) => {
        // 异步操作一
        callback(null, 'one', 'two');
    },
    (arg1, arg2, callback) => {
        // 异步操作二
        callback(null, 'three');
    },
    (arg1, callback) => {
        // 异步操作三
        callback(null, 'done');
    }
], (err, result) => {
    if (err) throw err;
    console.log(result);
});
Nach dem Login kopieren

Im obigen Code definieren wir drei asynchrone Operationen, und bei jeder asynchronen Operation wird ein Rückruf aufgerufen, um das Ergebnis zurückzugeben. In der Rückruffunktion stellt der erste Parameter die Fehlerinformationen dar oder null, wenn kein Fehler vorliegt, und die nachfolgenden Parameter sind die Parameter, die an den nächsten asynchronen Vorgang übergeben werden müssen. In der letzten Callback-Funktion wird das Ergebnis zur Verarbeitung übergeben.

async.series-Methode
  1. async.series-Methode wird verwendet, um mehrere asynchrone Vorgänge nacheinander auszuführen, und das Ergebnis jedes asynchronen Vorgangs wird an den nächsten Vorgang übergeben. Seine Verwendung ist wie folgt:
async.series([
    (callback) => {
        // 异步操作一
        callback(null, 'one');
    },
    (callback) => {
        // 异步操作二
        callback(null, 'two');
    },
    (callback) => {
        // 异步操作三
        callback(null, 'three');
    }
], (err, result) => {
    if (err) throw err;
    console.log(result);
});
Nach dem Login kopieren

Im obigen Code definieren wir drei asynchrone Operationen. Jede asynchrone Operation gibt das Ergebnis der asynchronen Operation zurück. In der letzten Callback-Funktion werden alle Ergebnisse zur Verarbeitung übergeben.

async.parallel-Methode
  1. async.parallel-Methode wird verwendet, um mehrere asynchrone Vorgänge parallel auszuführen. Seine Verwendung ist wie folgt:
async.parallel([
    (callback) => {
        // 异步操作一
        callback(null, 'one');
    },
    (callback) => {
        // 异步操作二
        callback(null, 'two');
    },
    (callback) => {
        // 异步操作三
        callback(null, 'three');
    }
], (err, result) => {
    if (err) throw err;
    console.log(result);
});
Nach dem Login kopieren

Im obigen Code haben wir drei asynchrone Operationen definiert, und diese drei Operationen werden parallel ausgeführt. In der letzten Callback-Funktion werden alle Ergebnisse zur Verarbeitung übergeben.

async.each-Methode
  1. async.each-Methode wird verwendet, um ein Array oder ein Objekt zu durchlaufen und asynchrone Operationen für jedes Element auszuführen. Nachdem jede asynchrone Operation ausgeführt wurde, wird die Rückruffunktion aufgerufen. Liegt ein Fehler vor, springt er sofort heraus und gibt eine Fehlermeldung zurück. Seine Verwendung ist wie folgt:
async.each(['file1', 'file2', 'file3'], (item, callback) =>{
    // 异步操作
    callback(null);
}, (err) => {
    if (err) throw err;
    console.log('done');
});
Nach dem Login kopieren

Im obigen Code durchlaufen wir ein Array von Zeichenfolgen und führen eine asynchrone Operation für jedes Element durch. In der letzten Callback-Funktion werden alle Ergebnisse zur Verarbeitung übergeben.

3. Zusammenfassung

Mit der asynchronen Methode können mehrere asynchrone Vorgänge in einer bestimmten Reihenfolge ausgeführt und Ausnahmen behandelt werden, die während der Ausführung asynchroner Vorgänge auftreten. In Node.js ist die asynchrone Programmierung sehr wichtig, da sie Datenoperationen und Netzwerkanforderungen effizienter ausführen kann, was bei großen Webanwendungen zu enormen Leistungsvorteilen führen kann. Das gute Erlernen der asynchronen Programmierung ist eine wichtige Grundlage, um ein ausgezeichneter Node.js-Entwickler zu werden.

Das obige ist der detaillierte Inhalt vonSo verwenden Sie asynchrone Methoden für die asynchrone Programmierung in Node.js. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!