您好,登錄后才能下訂單哦!
這篇文章主要講解了“Node.js中如何實現異步處理”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“Node.js中如何實現異步處理”吧!
異步的各種寫法
任務說明:項目根目錄下有三個文件 Jay.txt 、 Angela.txt 、 Henry.txt ,依次讀取這三個文件的內容并打印。
下面使用各種異步處理的方法來完成此任務。
回調函數
ps:下面看下Nodejs 處理異步(獲取異步數據并處理)的方法
方法1. 回調函數方式
將異步方法如readFile封裝到一個自定義函數中,通過將異步方法得到的結果傳給自定義方法的回調函數參數。具體如下(以fs模塊的readFile方法為例):
//封裝 var func = function(filePath,callback){ fs.readFile(filePath, function(err, data){ if(err){ return false; } callback(data); }) } //調用 func('./a.txt', function(res){ //處理異步方法返回得到的數據 console.log(res); })
方法2. 事件驅動方式
使用node events模塊,利用其EventEmitter對象廣播和接收廣播的方式傳輸異步方法返回的結果。具體如下(仍以fs模塊的readFile異步方法為例):
var events = require('events'); var EventEmitter = new events.EventEmitter(); fs.readFile('./a.txt', function(err, data){ //數據讀取后發出readData信號的廣播,并將數據data傳出 EventEmitter.emit('readData', data); }) //監聽readData信號,并對監聽到的數據做處理(也可先定義監聽,再做異步的讀取操作) EventEmitter.on('readData', function(res){ //處理異步讀取得到的數據 console.log(res); })
感謝各位的閱讀,以上就是“Node.js中如何實現異步處理”的內容了,經過本文的學習后,相信大家對Node.js中如何實現異步處理這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。