Jquery源码解析---利用队列来实现函数的顺序执行

来源:互联网 发布:台达触摸屏编程软件 编辑:程序博客网 时间:2024/06/07 05:50
//利用队列来实现函数的顺序执行function test(list,callback){var task;task = list.shift();if(task){task();}if(list.length > 0){arguments.callee(list,callback);}else{callback();}}var list = [function(){console.log("first")},function(){console.log("second")}];var callback = function(){console.log("callback");};test(list,callback);我们换成jQuery提供的方式:var callbacks = $.Callbacks();callbacks.add(function() {    alert('a');})callbacks.add(function() {    alert('b');})callbacks.fire(); //输出结果: 'a' 'b'

是不是便捷很多了,代码又很清晰,所以Callbacks它是一个多用途的回调函数列表对象,提供了一种强大的方法来管理回调函数队列。


那么我们使用回调函数,总的来说弱化耦合,让调用者与被调用者分开,调用者不关心谁是被调用者,所有它需知道的,只是存在一个具有某种特定原型、某些限制条件的被调用函数。
0 0
原创粉丝点击