您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關javascript中如何使用回調函數,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。
什么是回調或高級函數?
回調函數被認為是一種高級函數,一種被作為參數傳遞給另一個函數(在這稱作"otherFunction")的高級函數,回調函數會在otherFunction內被調用(或執行)。回調函數的本質是一種模式(一種解決常見問題的模式),因此回調函數也被稱為回調模式。
思考一下下面這種在jQuery中常用的回調函數:
//Notethattheitemintheclickmethod'sparameterisafunction,notavariable.
//Theitemisacallbackfunction
$("#btn_1").click(function(){
alert("Btn1Clicked");
});
正如在前面的例子所看到的,我們傳遞了一個函數給click方法的形參,click方法將會調用(或執行)我們傳遞給它的回調函數。這個例子就給出了JavaScript中使用回調函數的一個典型方式,并廣泛應用于jQuery中。
細細體味一下另一個基本JavaScript的典型例子:
varfriends=["Mike","Stacy","Andy","Rick"];
friends.forEach(function(eachName,index){
console.log(index+1+"."+eachName);//1.Mike,2.Stacy,3.Andy,4.Rick
});
我們再一次用同樣的方式傳遞了一個匿名的函數(沒有函數名的函數)給forEach方法,作為forEach的參數。
到目前為止,我們傳遞了一個匿名的函數作為參數給另一個函數或方法。在看其它更復雜的回調函數之前,讓我們理解一下回調的工作原理并實現一個自己的回調函數。
回調函數是如何實現的?
我們可以像使用變量一樣使用函數,作為另一個函數的參數,在另一個函數中作為返回結果,在另一個函數中調用它。當我們作為參數傳遞一個回調函數給另一個函數時,我們只傳遞了這個函數的定義,并沒有在參數中執行它。
當包含(調用)函數擁有了在參數中定義的回調函數后,它可以在任何時候調用(也就是回調)它。
這說明回調函數并不是立即執行,而是在包含函數的函數體內指定的位置“回調”它(形如其名)。
關于javascript中如何使用回調函數就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。