这篇文章主要介绍了让JavaScript中setTimeout支持链式操作的方法,本文直接给出代码实例,需要的朋友可以参考下
修改很简单,通过参数判断,然后返回下promise对象
代码如下:
(function() {
var timeout = setTimeout;
window.setTimeout = function(fn, time) {
if (!time) {
time = fn;
return $.Deferred(function(dfd) {
timeout(function() {
dfd.resolvel(dfd);
}, time);
}).promise();
}
timeout.apply(window, arguments);
}
})();
调用
代码如下:
setTimeout(1000).done(function(dnt) {
console.log(dnt)
})
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69994010/viewspace-2753485/ ,如需转载,请注明出处,否则将追究法律责任。