模仿jquery的delay函数,链式延时
var test = { delay: function (time) { test.allTime += time; var queue = {}; for (var i in test) { if (i === 'delay' || i === 'c') continue; queue[i] = function(i){ return function () { setTimeout(function () { test[i](); }, test.allTime); return test; }}(i); } return queue; }, run: function () { console.log(this.c); }, c: 20, allTime:0 }; var k = test.delay(2000).run(); k.delay(2000).run();
用这种方式可以达到test.delay(2000).run().delay(2000).run();仅供参考