国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

淺談javascript中回調(diào)函數(shù)和異步回調(diào)

lufficc / 2893人閱讀

摘要:話不多說(shuō),同樣直接上栗子執(zhí)行完成,進(jìn)行第二步操作執(zhí)行結(jié)果為進(jìn)行第二步操作執(zhí)行完成因?yàn)槭钱惒交卣{(diào)函數(shù),所以是不需要先等函數(shù)執(zhí)行完成后,才能執(zhí)行進(jìn)行第二步操作

Hi,小伙伴們,今天來(lái)和大家談一談?dòng)嘘P(guān)javascript 中回調(diào)的問(wèn)題,首先回調(diào)函數(shù)分為兩種
1、同步回調(diào)函數(shù)(普通的回調(diào)函數(shù))
2、異步回調(diào)函數(shù)

其中同步回調(diào)函數(shù)是要等到回調(diào)函數(shù)都執(zhí)行完成后才能進(jìn)行接下來(lái)的操作,也就是說(shuō)是阻塞式運(yùn)行。

話不多說(shuō),直接上栗子

function waitFive(callback){
      var currentDate = new Date();
      var pus = 0;
      while(pus<5000){
        var date = new Date();
        pus = date - currentDate;
      }
      callback("執(zhí)行完成");
    }
    waitFive(function(msg){console.log(msg);});
    console.log("進(jìn)行第二步操作;");
    
    **執(zhí)行結(jié)果為:**
 
       執(zhí)行完成
       進(jìn)行第二步操作
   
  

因?yàn)槭峭交卣{(diào)函數(shù),所以是要先等waitFive函數(shù)執(zhí)行完成后,才能執(zhí)行

   console.log("進(jìn)行第二步操作;");

而異步回調(diào)函數(shù)不需要等到回調(diào)函數(shù)都執(zhí)行完成后才能進(jìn)行接下來(lái)的操作,也就是說(shuō)是非阻塞式運(yùn)行。

話不多說(shuō),同樣直接上栗子

function waitFive(callback){
      setTimeout(function(callback){
      callback("執(zhí)行完成");
      
      },5000);
    }
    waitFive(function(msg){console.log(msg);});
    console.log("進(jìn)行第二步操作;");
    
    **執(zhí)行結(jié)果為:**
       進(jìn)行第二步操作
       執(zhí)行完成

因?yàn)槭钱惒交卣{(diào)函數(shù),所以是不需要先等waitFive函數(shù)執(zhí)行完成后,才能執(zhí)行

   console.log("進(jìn)行第二步操作;");

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/86546.html

相關(guān)文章

  • 淺談不同環(huán)境下的JavaScript執(zhí)行機(jī)制 + 示例詳解

    摘要:如果沒(méi)有其他異步任務(wù)要處理比如到期的定時(shí)器,會(huì)一直停留在這個(gè)階段,等待請(qǐng)求返回結(jié)果。執(zhí)行的執(zhí)行事件關(guān)閉請(qǐng)求的,例如事件循環(huán)的每一次循環(huán)都需要依次經(jīng)過(guò)上述的階段。因此,才會(huì)早于執(zhí)行。 showImg(https://segmentfault.com/img/bVbnY76); 概念 同步任務(wù)(Synchronous) 在主線程上排隊(duì)執(zhí)行的任務(wù),只有前一個(gè)任務(wù)執(zhí)行完畢,才能執(zhí)行后一個(gè)任務(wù) ...

    wanghui 評(píng)論0 收藏0
  • 淺談JavascriptPromise對(duì)象的實(shí)現(xiàn)

    摘要:我們可以進(jìn)行適當(dāng)?shù)母倪M(jìn),把回調(diào)函數(shù)寫到外面即使是改寫成這樣,代碼還是不夠直觀,但是如果有了對(duì)象,代碼就可以寫得非常清晰,一目了然,請(qǐng)看這樣函數(shù)就不用寫在的回調(diào)中了目前的標(biāo)準(zhǔn)中還未支持對(duì)象,那么我們就自己動(dòng)手,豐衣足食吧。 本文同步自我得博客:http://www.joeray61.com 很多做前端的朋友應(yīng)該都聽說(shuō)過(guò)Promise(或者Deferred)對(duì)象,今天我就講一下我對(duì)Prom...

    caiyongji 評(píng)論0 收藏0
  • 淺談 JavaScript 運(yùn)行機(jī)制

    摘要:以多線程的形式,允許單個(gè)任務(wù)分成不同的部分進(jìn)行運(yùn)行。提供協(xié)調(diào)機(jī)制,一方面防止進(jìn)程之間和線程之間產(chǎn)生沖突,另一方面允許進(jìn)程之間和線程之間共享資源。主線程會(huì)不斷的重復(fù)上訴過(guò)程。 眾所周知,js是單線程的,說(shuō)到線程,我們首先來(lái)仔細(xì)辨析一下線程和進(jìn)程的知識(shí)。 一、進(jìn)程與線程 阮一峰老師的一篇文章寫的很好 cpu會(huì)給當(dāng)前進(jìn)程分配資源,進(jìn)程是資源分配的最小單位,進(jìn)程的資源會(huì)分配給線程使用,線程是C...

    URLOS 評(píng)論0 收藏0
  • 淺談async·await

    摘要:在語(yǔ)言中,函數(shù)替換的不是表達(dá)式,而是多參數(shù)函數(shù),將其替換成一個(gè)只接受回調(diào)函數(shù)作為參數(shù)的單參數(shù)函數(shù)。為什么里面必須使用函數(shù)呢,因?yàn)槲覀冃枰_保傳入的值只有一個(gè),利用其回調(diào)函數(shù),來(lái)進(jìn)行遞歸自動(dòng)控制函數(shù)的流程,接收和交還程序的執(zhí)行權(quán) 前言 這篇文章主要是梳理一下自己對(duì)阮一峰大神寫的關(guān)于async/await文章,有寫得不對(duì)的地方以及理解得不對(duì)的地方,各位大佬請(qǐng)指錯(cuò)! 對(duì)比 簡(jiǎn)單對(duì)比傳統(tǒng)異步,...

    Magicer 評(píng)論0 收藏0
  • 淺談ES6原生Promise

    摘要:如果有錯(cuò)誤,則到的第二個(gè)回調(diào)函數(shù)中,對(duì)錯(cuò)誤進(jìn)行處理。假設(shè)第一個(gè)的第一個(gè)回調(diào)沒(méi)有返回一個(gè)對(duì)象,那么第二個(gè)的調(diào)用者還是原來(lái)的對(duì)象,只不過(guò)其的值變成了第一個(gè)中第一個(gè)回調(diào)函數(shù)的返回值。 ES6標(biāo)準(zhǔn)出爐之前,一個(gè)幽靈,回調(diào)的幽靈,游蕩在JavaScript世界。 正所謂: 世界本沒(méi)有回調(diào),寫的人多了,也就有了})})})})})。 Promise的興起,是因?yàn)楫惒椒椒ㄕ{(diào)用中,往往會(huì)出現(xiàn)回調(diào)函數(shù)一...

    yedf 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

lufficc

|高級(jí)講師

TA的文章

閱讀更多
最新活動(dòng)
閱讀需要支付1元查看
<