Penjelasan menarik tentang fungsi panggil balik dalam Node.js (dengan contoh)

青灯夜游
Lepaskan: 2021-10-15 10:11:02
ke hadapan
1523 orang telah melayarinya

Artikel ini akan memberi anda pengenalan yang menarik kepada fungsi panggil balik Node.js, dan memberi anda pemahaman ringkas tentang fungsi panggil balik melalui contoh.

Penjelasan menarik tentang fungsi panggil balik dalam Node.js (dengan contoh)

Percakapan menarik tentang fungsi panggil balik Node.js

Manifestasi langsung pengaturcaraan tak segerak Node.js ialah fungsi panggil balik . Fungsi panggil balik berada dalam Ia akan dipanggil selepas menyelesaikan tugas, dan Node.js menggunakan banyak fungsi panggil balik, saya fikir ia sesuai untuk menggunakan Node.js untuk bercakap tentang fungsi panggil balik. Sekarang izinkan saya mencuba yang terbaik untuk bercakap tentang fungsi panggil balik~ [Pembelajaran yang disyorkan: "tutorial nodejs"]

Apakah fungsi panggil balik

Anda pergi ke forum dalam talian untuk mencari benih sumber, tetapi sumber yang anda cari tidak ditemui, jadi anda menyiarkan di forum dan biarkan alamat e-mel anda meminta sumber Selepas beberapa hari, seorang netizen mencari sumber dan menghantar e-mel kepada anda Kemudian anda menerima benih sumber dan memuat turun sumber tersebut. Di sini, apabila anda meninggalkan alamat e-mel dalam forum, anda mendaftarkan fungsi panggil balik Alamat e-mel yang anda tinggalkan ialah fungsi panggil balik Apabila seseorang menemui sumber dan menghantar e-mel kepada anda, fungsi panggil balik dicetuskan dan fungsi panggil balik dipanggil. . Apabila anda mendapat benih dan memuat turunnya, ia adalah acara panggilan balik.

Contoh:

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

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

main("给了,给了!",say)
Salin selepas log masuk

Di sini panggilan balik ialah fungsi panggil balik Sudah tentu, nama ini tidak perlu digunakan. Dalam badan fungsi, mesej dikeluarkan dahulu, dan kemudian fungsi panggil balik dipanggil Fungsi panggil balik (panggilan balik) menggunakan msg sebagai parameternya.

Contoh fungsi panggil balik

Terdapat dua cara untuk membaca fail menggunakan program Node.js. Satu ialah operasi segerak Perintah seterusnya hanya boleh dilaksanakan selepas operasi baca selesai Kaedah ini dipanggil menyekat. Kaedah lain ialah asynchronous, yang membolehkan anda membaca fail semasa melaksanakan arahan lain Kaedah ini juga dipanggil tanpa sekatan.

Pendekatan tidak menyekat adalah berdasarkan fungsi panggil balik, membolehkan operasi dilaksanakan secara selari. Hasil operasi akan diproses oleh fungsi panggil balik apabila peristiwa itu berlaku, jadi program boleh melaksanakan langkah seterusnya tanpa menunggu hasil operasi Ini meningkatkan prestasi Node.js dan membolehkannya mengendalikan sejumlah besar permintaan serentak.

Contoh:

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 程序已经执行结束~")
Salin selepas log masuk

Hasil berjalan:

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

Boleh didapati bahawa apabila membaca fail, perkara berikut akan dilaksanakan tanpa mengira sama ada fail tersebut mempunyai telah dibaca atau tidak. Oleh itu, perkataan yang telah tamat program akan dipaparkan terlebih dahulu, dan kemudian kandungan fail akan dipaparkan selepas menunggu fail dibaca. Kandungan fail dikembalikan sebagai data parameter fungsi panggil balik, supaya anda tidak perlu menunggu operasi I/O fail selesai sebelum melaksanakan kod.

Untuk lebih banyak pengetahuan berkaitan pengaturcaraan, sila lawati: Video Pengaturcaraan! !

Atas ialah kandungan terperinci Penjelasan menarik tentang fungsi panggil balik dalam Node.js (dengan contoh). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:juejin.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan