您好,登錄后才能下訂單哦!
這篇文章主要介紹了js回調函數指的是什么,具有一定借鑒價值,需要的朋友可以參考下。希望大家閱讀完這篇文章后大有收獲。下面讓小編帶著大家一起了解一下。
在Javascript中,函數是第一類對象,這意味著函數可以像對象一樣按照第一類管理被使用。既然函數實際上是對象:它們能被“存儲”在變量中,能作為函數參數被傳遞,能在函數中被創建,能從函數中返回。
因為函數是第一類對象,我們可以在Javascript使用回調函數。在下面的文章中,我們將學到關于回調函數的方方面面。回調函數可能是在Javascript中使用最多的函數式編程技巧,雖然在字面上看起來它們一直一小段Javascript或者jQuery代碼,但是對于許多開發者來說它任然是一個謎。在閱讀本文之后你能了解怎樣使用回調函數。
回調函數是從一個叫函數式編程的編程范式中衍生出來的概念。簡單來說,函數式編程就是使用函數作為變量。函數式編程過去 - 甚至是現在,依舊沒有被廣泛使用 - 它過去常被看做是那些受過特許訓練的,大師級別的程序員的秘傳技巧。
幸運的是,函數是編程的技巧現在已經被充分闡明因此像我和你這樣的普通人也能去輕松使用它。函數式編程中的一個主要技巧就是回調函數。在后面內容中你會發現實現回調函數其實就和普通函數傳參一樣簡單。這個技巧是如此的簡單以致于我常常感到很奇怪為什么它經常被包含在講述Javascript高級技巧的章節中。
解釋下什么是回調或者高階函數
一個回調函數,也被稱為高階函數,是一個被作為參數傳遞給另一個函數(在這里我們把另一個函數叫做“otherFunction”)的函數,回調函數在otherFunction中被調用。一個回調函數本質上是一種編程模式(為一個常見問題創建的解決方案),因此,使用回調函數也叫做回調模式。
下面是一個在jQuery中使用回調函數簡單普遍的例子:
/注意到click方法中是一個函數而不是一個變量 //它就是回調函數 $("#btn_1").click(function() { alert("Btn 1 Clicked"); });
正如你在前面的例子中看到的,我們將一個函數作為參數傳遞給了click方法。click方法會調用(或者執行)我們傳遞給它的函數。這是Javascript中回調函數的典型用法,它在jQuery中廣泛被使用。
下面是另一個Javascript中典型的回調函數的例子:
var friends = ["Mike", "Stacy", "Andy", "Rick"]; friends.forEach(function (eachName, index){ console.log(index + 1 + ". " + eachName); // 1. Mike, 2. Stacy, 3. Andy, 4. Rick });
再一次,注意到我們講一個匿名函數(沒有名字的函數)作為參數傳遞給了forEach方法。
到目前為止,我們將匿名函數作為參數傳遞給了另一個函數或方法。在我們看更多的實際例子和編寫我們自己的回調函數之前,先來理解回調函數是怎樣運作的。
感謝你能夠認真閱讀完這篇文章,希望小編分享js回調函數指的是什么內容對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,遇到問題就找億速云,詳細的解決方法等著你來學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。