異步回調的使用場景及個人理解

最近在學習node.js nodeJS的核心之一就是回調。之前理解一直概念不清。所以查了很多資料。
以下是分享下個人對于異步回調的理解:
先說說回調:
1、回調的作用:
執行B事件的條件是必須先執行完A
簡單解釋:你送女友回家,叫她到家給你打電話。先到家再call你。當然如果沒女友的。。額。你可以意淫下。
2、什么是回調函數:
不解釋上代碼。
f2 = function(callbackFn,v1,v2){
callbackFn(v1,v2);
};
f1 = function(v1,v2){
document.write(v1+v2);
};
f2(f1,1,2);
把函數作為參數傳遞并調用成為回調函數。

同步異步這里不做解釋。下面說說異步回調。
那么異步回調是什么呢:
類似貼吧中。如果某帖子有圖片,當你點開帖子的時候,你先看到文字,然后經過圖片下載后再呈現出來。 這一個過程就是一個異步回調過程。
js是單線程執行到底,所以要讓圖片不影響你看文字就需要進行異步,而圖片要加載完后再顯示出來,這就是回調。
總的來說。回調和異步并沒有直接聯系。
以下代碼用于模擬文字不會受圖片加載的影響
<script typet="text/javascript" src="http://libs.baidu.com/jquery/1.9.1/jquery.min.js"></script>
<script>
f2= function (str){
$("#f2").html(str)
};
f3= function (){
$("#f3").html('我是F3')
};
function f1(callback,str){
var i =0;
setInterval(function(){
$("#f1").html(i)
if(i>=50){
callback(str);
return false;
}
i++;
},100);
}
f1(f2,'最后執行');
f3();
</script>
以上是個人理解,如有錯誤歡迎指正。
參考博客:
https://segmentfault.com/a/1190000007227305

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • //Clojure入門教程: Clojure – Functional Programming for the J...
    葡萄喃喃囈語閱讀 3,779評論 0 7
  • 弄懂js異步 講異步之前,我們必須掌握一個基礎知識-event-loop。 我們知道JavaScript的一大特點...
    DCbryant閱讀 2,752評論 0 5
  • 你可能知道,Javascript語言的執行環境是"單線程"(single thread)。所謂"單線程",就是指一...
    乖乖果效36閱讀 151評論 0 0
  • 不知何時起 偽裝了自己 不再真切的表達自己的情緒 不會大聲的笑放肆的哭 不再坦誠對待自己 好像那些面具能欺騙到自己...
    我眼里的我閱讀 166評論 0 0
  • 2017年8月12日,如是家人譚紅霞,種種子第12天 發心:我今天不是為了我個人而聞思修,而是為了六道輪回一切如母...
    心雅701閱讀 356評論 0 2