Heim  >  Artikel  >  Web-Frontend  >  Interessante Erklärung von Callback-Funktionen in Node.js (mit Beispielen)

Interessante Erklärung von Callback-Funktionen in Node.js (mit Beispielen)

青灯夜游
青灯夜游nach vorne
2021-10-15 10:11:021449Durchsuche

Dieser Artikel gibt Ihnen eine interessante Einführung in die Rückruffunktion von Node.js und vermittelt Ihnen anhand von Beispielen ein kurzes Verständnis der Rückruffunktion. Ich hoffe, er wird Ihnen hilfreich sein!

Interessante Erklärung von Callback-Funktionen in Node.js (mit Beispielen)

Interessantes Gespräch über die Rückruffunktion von Node.js

Die direkte Manifestation der asynchronen Programmierung in Node.js ist die Rückruffunktion, die nach Abschluss der Aufgabe aufgerufen und von Node.js verwendet wird Es gibt viele Rückruffunktionen. Ich denke, es ist angemessen, Node.js zu verwenden, um über Rückruffunktionen zu sprechen. Jetzt werde ich mein Bestes geben, um über die Rückruffunktion zu sprechen ~ [Empfohlenes Lernen: „nodejs-Tutorial“]

Was ist die Rückruffunktion? Sie gehen zum Online-Forum, um nach Ressourcensamen zu suchen, aber Sie können die gesuchte Ressource nicht finden. Dann posten Sie im Forum und hinterlassen eine E-Mail mit der Bitte um Ressourcen. Ein paar Tage später findet ein Internetnutzer die Ressource und sendet Ihnen eine E-Mail. Anschließend erhalten Sie den Ressourcen-Seed und laden ihn herunter die Ressource. Wenn Sie hier eine E-Mail-Adresse im Forum hinterlassen, registrieren Sie die Rückruffunktion. Die von Ihnen hinterlassene E-Mail-Adresse ist die Rückruffunktion. Wenn jemand die Ressource findet und Ihnen eine E-Mail sendet, wird die Rückruffunktion ausgelöst . Sie erhalten den Seed und laden ihn herunter, das ist das Rückrufereignis. Beispiel:

function main(info,callback){
    console.log("点赞、评论、转发了没?!")
    callback(info)
}

function say(msg){
    console.log(msg)
}

main("给了,给了!",say)

Der Callback ist hier die Callback-Funktion, dieser Name muss natürlich nicht verwendet werden. Im Funktionskörper wird zunächst eine Nachricht ausgegeben und dann die Callback-Funktion aufgerufen. Die Callback-Funktion (Callback) verwendet msg als Parameter.

Beispiel für eine Callback-Funktion

Es gibt zwei Möglichkeiten, Dateien mit dem Node.js-Programm zu lesen. Eine davon ist eine synchrone Operation. Nachfolgende Befehle können erst ausgeführt werden, nachdem die Leseoperation abgeschlossen ist. Die andere Methode ist asynchron und ermöglicht das Lesen von Dateien während der Ausführung anderer Befehle. Diese Methode wird auch als nicht blockierend bezeichnet. Die nicht blockierende Methode basiert auf Callback-Funktionen und ermöglicht die parallele Ausführung von Operationen. Das Operationsergebnis wird von der Rückruffunktion verarbeitet, wenn das Ereignis auftritt, sodass das Programm den nächsten Schritt ausführen kann, ohne auf das Ergebnis einer Operation warten zu müssen. Dies verbessert die Leistung von Node.js erheblich und ermöglicht die Verarbeitung einer großen Anzahl von Schritten gleichzeitige Anfragen.

Beispiel:

const fs = require("fs")

fs.readFile('./foo.txt',function(err,data){
    if(err) return console.error(err)
    console.log(data.toString())
})

console.log("Node.js 程序已经执行结束~")

Laufergebnis:

Node.js 程序已经执行结束~
小的们,快给我点赞~

Es kann festgestellt werden, dass beim Lesen einer Datei die folgende Ausgabeanweisung ausgeführt wird, unabhängig davon, ob die Datei gelesen wurde. Daher werden zuerst die Worte angezeigt, mit denen das Programm beendet wurde, und dann wird der Dateiinhalt angezeigt, nachdem darauf gewartet wurde, dass die Datei gelesen wird. Der Dateiinhalt wird als Parameterdaten der Rückruffunktion zurückgegeben, sodass Sie nicht auf den Abschluss des Datei-E/A-Vorgangs warten müssen, bevor Sie den Code ausführen.

Weitere Kenntnisse zum Thema Programmierung finden Sie unter:

Programmiervideos

! !

Das obige ist der detaillierte Inhalt vonInteressante Erklärung von Callback-Funktionen in Node.js (mit Beispielen). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:juejin.cn. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen