Js中的callback機(jī)制,即回調(diào).
JS中用到回調(diào)的幾種情況:
1.動(dòng)態(tài)加載(外部)js的時(shí)候,在加載完成之后進(jìn)行一些操作,可以使用callback
2.加載iframe時(shí)也可以通過callback執(zhí)行一些操作
3.ajax的使用,提交請(qǐng)求后得到的返回值用callback機(jī)制解析使用
4.鏈?zhǔn)秸{(diào)用的時(shí)候,在賦值器方法中(或者本身沒有返回值的方法中)很容易實(shí)現(xiàn)鏈?zhǔn)秸{(diào)用,而取值器相對(duì)來說不好實(shí)現(xiàn)鏈?zhǔn)秸{(diào)用,因?yàn)槟阈枰≈灯鞣祷啬阈枰臄?shù)據(jù)而不是this指針,如果要實(shí)現(xiàn)鏈?zhǔn)椒椒?,可以用回調(diào)函數(shù)來實(shí)現(xiàn),
5.settimeout、setInterval的函數(shù)調(diào)用得到其返回值,由于兩個(gè)函數(shù)都異步,無法在主體里等待它們的返回值,它們被打開的時(shí)候程序也不會(huì)停下來等待,只能使用callback。
function showDiv(callback){
$("#div1").show();
callback($("#div1"));
}
showDiv(function($div){
$div.text("hello world");
});