站長資訊網(wǎng)
        最全最豐富的資訊網(wǎng)站

        nodejs回調(diào)地獄是什么

        在nodejs中,“I/O”的操作結(jié)果基本上都需要在回調(diào)函數(shù)中處理,當(dāng)處理多個(gè)事件時(shí)回調(diào)函數(shù)就會(huì)一層層的嵌套,這就是回調(diào)地獄;也就是一個(gè)異步請求套著一個(gè)異步請求,一個(gè)異步請求依賴于另一個(gè)的執(zhí)行結(jié)果,使用回調(diào)的方式相互嵌套的情況。

        nodejs回調(diào)地獄是什么

        本文操作環(huán)境:Windows10系統(tǒng)、nodejs 12.19.0版、Dell G3電腦。

        nodejs回調(diào)地獄是什么

        nodejs中I/O的操作結(jié)果基本上都需要在回調(diào)函數(shù)中處理,當(dāng)處理多個(gè)事件時(shí)回調(diào)函數(shù)就會(huì)一層層的嵌套,這就是回調(diào)地獄。

        一個(gè)異步請求套著一個(gè)異步請求,一個(gè)異步請求依賴于另一個(gè)的執(zhí)行結(jié)果,使用回調(diào)的方式相互嵌套

        Nodejs最大的亮點(diǎn)就在于事件驅(qū)動(dòng), 非阻塞I/O 模型,這使得Nodejs具有很強(qiáng)的并發(fā)處理能力,非常適合編寫網(wǎng)絡(luò)應(yīng)用。在Nodejs中大部分的I/O操作幾乎都是異步的,也就是我們處理I/O的操作結(jié)果基本上都需要在回調(diào)函數(shù)中處理,比如下面的這個(gè)讀取文件內(nèi)容的函數(shù):

        fs.readFile('/etc/passwd', function (err, data) {   if (err) throw err;   console.log(data); });

        那,我們讀取兩個(gè)文件,將這兩個(gè)文件的內(nèi)容合并到一起處理怎么辦呢?大多數(shù)接觸js不久的人可能會(huì)這么干:

        fs.readFile('/etc/passwd', function (err, data) {   if (err) throw err;   fs.readFile('/etc/passwd2', function (err, data2) {     if (err) throw err;     // 在這里處理data和data2的數(shù)據(jù)   }); });

        那要是處理多個(gè)類似的場景,豈不是回調(diào)函數(shù)一層層的嵌套啊,這就是大家常說的回調(diào)金字塔或回調(diào)地獄的問題。

        推薦學(xué)習(xí):《nodejs視頻教程》

        贊(0)
        分享到: 更多 (0)
        網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號
        主站蜘蛛池模板: 精品福利一区二区三区精品国产第一国产综合精品 | 国语自产少妇精品视频蜜桃| 国产精品欧美久久久久无广告 | 小辣椒福利视频精品导航| 一本一本久久a久久综合精品蜜桃| 国产精品天干天干在线综合| 精品午夜福利在线观看| 久久伊人精品青青草原日本| 伊人久久大香线蕉精品| 精品国产一区二区三区久久久狼| 日韩福利视频精品专区| 日本一区二区三区精品中文字幕| 久久ww精品w免费人成| 香港三级精品三级在线专区 | 久久久精品人妻无码专区不卡 | 精品乱码一区二区三区四区| 亚洲精品tv久久久久| 国内精品久久久久久麻豆| 精品亚洲永久免费精品| 国产精品精品自在线拍| 久久精品黄AA片一区二区三区| 亚洲国产综合精品一区在线播放| 久久国产精品免费| 国产精品无码久久四虎| 亚洲国产精品国自产拍电影| 国产精品久久久天天影视| 国产精品无圣光一区二区| 十八18禁国产精品www| 一本久久精品一区二区| 久久久久一级精品亚洲国产成人综合AV区| 国产成人1024精品免费| 一级香蕉精品视频在线播放| 国产精品爽爽va在线观看网站| heyzo高无码国产精品| 国产成人精品日本亚洲18图| 97久久国产亚洲精品超碰热| 国产精品99精品久久免费| 国产午夜精品一区二区三区 | 国产精品毛片久久久久久久| 国产夫妇精品自在线| 91探花福利精品国产自产在线|