本篇文章為大家展示了怎么在JavaScript中使用callback回調(diào)函數(shù),內(nèi)容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。
創(chuàng)新互聯(lián)公司是專業(yè)的宣化網(wǎng)站建設公司,宣化接單;提供做網(wǎng)站、成都網(wǎng)站建設,網(wǎng)頁設計,網(wǎng)站設計,建網(wǎng)站,PHP網(wǎng)站建設等專業(yè)做網(wǎng)站服務;采用PHP框架,可快速的進行宣化網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團隊,希望更多企業(yè)前來合作!
JavaScript回調(diào)函數(shù)的使用是很常見的,引用官方回調(diào)函數(shù)的定義:
A callback is a function that is passed as an argument to another function and is executed after its parent function has completed.
解釋得很明確,回調(diào)函數(shù)就是作為參數(shù)傳遞給另一個函數(shù)并在其父函數(shù)完成后執(zhí)行的函數(shù)。
聽起來似乎有點不好理解,所以還是舉例進行說明,介紹回調(diào)函數(shù)之前先簡單說明一下同步和異步,前端也有同步和異步。同步和異步總得來說,兩者最明顯的區(qū)別就是是否需要等待,如果是串行執(zhí)行的就是同步機制,是并行執(zhí)行的就是異步機制,這個比較好理解
回調(diào)函數(shù)的使用并沒有同步和異步的區(qū)別,回調(diào)函數(shù)只是一種特殊的函數(shù),可以應用于同步調(diào)用場景,也可以應用于異步調(diào)用場景
異步請求中的回調(diào)函數(shù)
最常用的有ajax異步調(diào)用或者事件機制,例子:
$.get('${root}/saveOrUpdate.do',function(result){ alert(result); });
同步請求中的回調(diào)函數(shù)
業(yè)務場景:舉個例子,點擊按鈕會觸發(fā)main函數(shù),進行接口數(shù)據(jù)保存(異步方式),數(shù)據(jù)保存成功之后,再回調(diào)打開彈窗的函數(shù)
保存數(shù)據(jù)函數(shù):
function saveRecord(seq,callback){ $.ajax({ url:'${root}/saveOrUpdate.do', type:"post", async:true, success:function(result){ //確保callback是一個函數(shù)類型的 if(typeof(callback)==='function'){ callback(true); } } }); }
main函數(shù)
//保存成功,才會打開彈窗 function main(seq){ saveRecord(seq,callbackFunction); }
回調(diào)函數(shù),數(shù)據(jù)保存成功后再調(diào)用
/*保存時的回調(diào)函數(shù)*/ function callbackFunction(saveSuccess){ if(saveSuccess){ //省略打開彈窗代碼 } }
上述內(nèi)容就是怎么在JavaScript中使用callback回調(diào)函數(shù),你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道。