回調(diào)函數(shù)-callBack

最近真是走霉運(yùn),跟了我近兩年的手機(jī),小六子被人偷了,瑪?shù)?,好多?yīng)用和圖片信息什么的全都沒備份,真是要死的心都有了。幸好第一時(shí)間把信息抹除了,昨天開始收到釣魚短信,要套路我的iPhoneID和密碼,妄想!該死的小偷,你只能拆零件去賣了。

感覺現(xiàn)在手機(jī)就像一個(gè)老朋友一樣,沒有了之后特別不習(xí)慣,尤其是一個(gè)用了好久的手機(jī),依賴性好大。愿天下偷手機(jī)的小偷都原地爆炸一百次。。。。

今天忙里偷閑,記個(gè)筆記,關(guān)于回調(diào)函數(shù)。馬上要下班了,憋尿中碼字,舒坦。。。

JS中的回調(diào)函數(shù)一共有兩種
  1. 同步回調(diào)函數(shù)(即普通的回調(diào)函數(shù))。
  2. 異步回調(diào)函數(shù)
    注:JS中的同步異步和現(xiàn)實(shí)生活的正好相反。
其中同步回調(diào)函數(shù)是要等到回調(diào)函數(shù)都執(zhí)行完成后才能進(jìn)行接下來的操作,也就是說是阻塞式運(yùn)行。


話不多說,舉個(gè)栗子說明

function waitFive(callback){ 
      var currentDate = new Date(), 
           pus = 0; 
      while(pus<1000){ 
          var date = new Date(); 
          pus = date - currentDate; 
      } 
      callback("回調(diào)執(zhí)行完成"); 
      pus = 2000;
} 
waitFive(
          function(msg){              //這里就是callback回調(diào)函數(shù)
               console.log(msg);
          }
);
console.log("進(jìn)行第二步操作;");
 *****執(zhí)行結(jié)果為:*****
        回調(diào)執(zhí)行完成 
        進(jìn)行第二步操作

這里就是同步回調(diào)函數(shù),必須等callback執(zhí)行完畢之后才能執(zhí)行下邊的
console.log("進(jìn)行第二步操作;");

而異步回調(diào)函數(shù)不需要等到回調(diào)函數(shù)都執(zhí)行完成后才能進(jìn)行接下來的操作,也就是說是非阻塞式運(yùn)行。
JavaScript語言說來也奇葩,為什么沒有設(shè)定異步執(zhí)行呢,要執(zhí)行異步程序,只能借助定時(shí)器功能了。
還是舉個(gè)栗子吧,把上邊的栗子改一下。。。

function waitFive(callback){ 
      setTimeout(function(){   
            callback('回調(diào)執(zhí)行完成');
      },2000); 
}
waitFive( 
      function(msg){           //這里就是callback回調(diào)函數(shù) 
              console.log(msg); 
      }
);
console.log("進(jìn)行第二步操作;"); 

*****執(zhí)行結(jié)果為:*****  
        進(jìn)行第二步操作
        回調(diào)執(zhí)行完成

反正也沒人看,自己寫著玩吧 意外發(fā)現(xiàn)一個(gè)問題,在定時(shí)器中傳參回調(diào)函數(shù),回調(diào)函數(shù)就成了字符串了,這是為毛呢???明天再看吧,下班回家了。心酸。。。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 有很多人不理解回調(diào)函數(shù)和遞歸函數(shù),我們?cè)谶@里研究一下。(本文僅適合新人) 什么是回調(diào)函數(shù),什么是遞歸函數(shù) 回調(diào)函數(shù)...
    黑雷閱讀 4,117評(píng)論 0 16
  • 前言 callback,大家都知道是回調(diào)函數(shù)的意思。如果讓你舉些callback的例子,我相信你可以舉出一堆。但c...
    卓三陽閱讀 117,570評(píng)論 3 35
  • 百科:回調(diào)函數(shù) 回調(diào)函數(shù)就是一個(gè)通過函數(shù)指針調(diào)用的函數(shù)。如果你把函數(shù)的指針(地址)作為參數(shù)傳遞給另一個(gè)函數(shù),當(dāng)這個(gè)...
    小豆soybean閱讀 7,073評(píng)論 0 0
  • 什么是callback 回調(diào)函數(shù)就是一個(gè)通過函數(shù)指針調(diào)用的函數(shù)。如果你把函數(shù)的指針(地址)作為參數(shù)傳遞給另一個(gè)函數(shù)...
    你期待的花開閱讀 1,600評(píng)論 0 6
  • 感賞今天有一個(gè)蒙族姑娘來應(yīng)聘導(dǎo)購(gòu),一直以來就想找一個(gè)蒙漢精通的小姑娘,年輕有氣質(zhì),來到店里我一眼就看上了! ...
    我就是我hxh閱讀 170評(píng)論 0 0

友情鏈接更多精彩內(nèi)容