回调函数/事件监听/ (发布/订阅) /Promises对象
假定有两个函数f1和f2,后者等待前者的执行结果。1
2
3
4
5
6
7function f1(callback){
setTimeout(function () {
// f1的任务代码
callback();
}, 1000);
}
f1(f2);事件监听
1
2
3
4
5
6
7f1.on('done', f2);
function f1(){
setTimeout(function () {
// f1的任务代码
f1.trigger('done');
}, 1000);
}发布/订阅
jQuery.publish(“done”)的意思是,f1执行完成后,向”信号中心”jQuery发布”done”信号,从而引发f2的执行1
2
3
4
5
6
7
8function f1(){
setTimeout(function () {
// f1的任务代码
jQuery.publish("done");
}, 1000);
}
jQuery.unsubscribe("done", f2);Promises对象
1
f1().then(f2)