溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何在nodejs中使用async模塊同步執行

發布時間:2021-03-17 17:11:07 來源:億速云 閱讀:291 作者:Leah 欄目:web開發

這期內容當中小編將會給大家帶來有關如何在nodejs中使用async模塊同步執行,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

首先安裝 模塊async

如何在nodejs中使用async模塊同步執行

測試代碼:

call.js

exports.fun1 = function (callback) {
 setTimeout(function(){
 console.log('方法1');
 callback('1');
 },1900);
}
exports.fun2 = function (callback) {
 setTimeout(function(){
 console.log('方法2');
 callback('2');
 },1700);
}
exports.fun3 = function (callback) {
 setTimeout(function(){
 console.log('方法3');
 callback('3');
 },1500);
}

test.js:

var async = require('async');
var step = require('step');
var call = require('./call');
call.fun1(function(data){
 console.log(data);
});
call.fun2(function(data){
 console.log(data);
});
call.fun3(function(data){
 console.log(data);
});
console.log('正常執行的方法');

沒有使用異步之前,我們調用三個方法期望的結果是:輸出:方法1,方法2,方法3,但是node本身異步的機制決定了它不能像其他同步語言一樣正常輸出,結果輸出是以時間花費最少的先執行:結果

如何在nodejs中使用async模塊同步執行

這就是node的異步機制,我們使用async同步模塊進行再次測試

加入代碼:

function seriesFunc() {
  async.series([
    function(callback) {
      call.fun1(function(data){
       callback(null,data);
      });
    },
    function(callback) {
      call.fun2(function(data){
       callback(null,data);
      });
    },
    function(callback) {
      call.fun3(function(data){
       callback(null,data);
      });
    }],
    function(error,result) {
      if(error) {
        console.log("error: ",error,"msg: ",result);
      }
      else {
        console.log("方法執行完畢"+result);
      }
    }
  );
} 
seriesFunc();

運行結果是否是我們期望的一次執行呢?

如何在nodejs中使用async模塊同步執行

上述就是小編為大家分享的如何在nodejs中使用async模塊同步執行了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女