node.js回調(diào)函數(shù)之阻塞調(diào)用與非阻塞調(diào)用
首先,node.js作為javascript運(yùn)行平臺(tái),它采用了事件驅(qū)動(dòng)和異步編程的方式,通過(guò)事件注冊(cè)和異步函數(shù),開(kāi)發(fā)人員可以提高資源利用率,服務(wù)器的性能也能得到改善。其次,對(duì)于前端人來(lái)說(shuō),node.js作為js的運(yùn)行平臺(tái),我們可以通過(guò)編寫(xiě)系統(tǒng)級(jí)或者服務(wù)器端的javascript代碼交給node.js來(lái)執(zhí)行,讓我們前端人也能作用于后臺(tái),相比之下,瀏覽器端的javascript代碼在運(yùn)行時(shí)會(huì)受到各種安全性的限制,對(duì)客戶系統(tǒng)的操作有限,而node.js則是一個(gè)全面的后臺(tái)運(yùn)行時(shí),為javascript提供了許多其他語(yǔ)言能夠?qū)崿F(xiàn)的許多功能。
下面回歸正題,首先給大家介紹阻塞調(diào)用,具體內(nèi)容請(qǐng)往下看。
1.阻塞調(diào)用(讀取完文件再執(zhí)行后面的操作)
var fs = require("fs");
var data = fs.readFileSync('/fs.txt');
console.log(data.toString());
console.log("程序執(zhí)行結(jié)束!");
輸出結(jié)果:
“文件內(nèi)容”
“程序執(zhí)行結(jié)束!”
2.非阻塞調(diào)用(讀取文件和其他操作同步執(zhí)行)
var fs = require("fs");
fs.readFile('/fs.txt',function(err,data){
if(err) return console.error(err);
console.log(data.toString());
});
console.log("程序執(zhí)行結(jié)束!");
輸出結(jié)果:
“程序執(zhí)行結(jié)束!”
“文件內(nèi)容”
以上內(nèi)容是小編給大家介紹的node.js回調(diào)函數(shù)之阻塞調(diào)用與非阻塞調(diào)用的全部?jī)?nèi)容,希望大家喜歡。
相關(guān)文章
nodejs如何讀取文件二進(jìn)制 前端響應(yīng)blob或base64顯示圖片
這篇文章主要介紹了nodejs如何讀取文件二進(jìn)制 前端響應(yīng)blob或base64顯示圖片方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-08-08
詳解如何模擬實(shí)現(xiàn)node中的Events模塊(通俗易懂版)
這篇文章主要介紹了如何模擬實(shí)現(xiàn)node中的Events模塊(通俗易懂版),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-04-04
node.js中的fs.exists方法使用說(shuō)明
這篇文章主要介紹了node.js中的fs.exists方法使用說(shuō)明,本文介紹了fs.exists方法說(shuō)明、語(yǔ)法、接收參數(shù)、使用實(shí)例和實(shí)現(xiàn)源碼,需要的朋友可以參考下2014-12-12
用Node.JS打造一個(gè)惡劣天氣實(shí)時(shí)預(yù)警系統(tǒng)
本文將從實(shí)戰(zhàn)的角度出發(fā),利用NodeJS以及聚合數(shù)據(jù)的第三方免費(fèi)接口打造一個(gè)完整的天氣實(shí)時(shí)預(yù)警項(xiàng)目系統(tǒng),具有一定的參考價(jià)值,感興趣的可以了解一下2021-12-12
NodeJs通過(guò)async/await處理異步的方法
本篇文章主要介紹了NodeJs通過(guò)async/await處理異步的方法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-10-10
Ubuntu22.04系統(tǒng)下升級(jí)nodejs到v18版本
ubuntu默認(rèn)安裝的nodejs版本比較老,要安裝到最新的,下面這篇文章主要給大家介紹了關(guān)于Ubuntu22.04系統(tǒng)下升級(jí)nodejs到v18版本的相關(guān)資料,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下2024-06-06

