回調函數(Callback Functions)
因為函數和其他數據一樣可以被賦值,刪除,拷貝等,所以也可以把函數作為參數傳入到另一個函數中。
實例一
- function ?invoke_and_add(a,b){ ??
- ?? return ?a()+b(); ??
- } ??
- ??
- function ?one(){ ??
- ?? return ?1; ??
- } ??
- ??
- function ?two(){ ??
- ?? return ?2; ??
- } ??
- ??
- invoke_and_add(one?,two);??
function invoke_and_add(a,b){ return a()+b(); } function one(){ return 1; } function two(){ return 2; } invoke_and_add(one ,two);
結果為3;
再來看看匿名函數的用法。
實例二
- invoke_and_add( function (){ return ?1;}, function (){ return ?2;})??
invoke_and_add(function(){return 1;},function(){return 2;})
我們用匿名函數替代了 one,two兩個函數。
通過上面兩個實例,回調函數的定義為:傳遞一個函數A到另一個函數B中,并且這個函數B執行函數A。我們就說函數A叫做回調函數。如果沒有名稱,就叫做匿名回調函數
?
回調函數的作用
主要有三個
1.當函數作為參數傳遞的時候,不用為這個函數定義一個名稱,這樣的好處是減少了全局變量。
2.節省了大量的代碼。
3.提高了程序的性能。
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
