让JavaScript中setTimeout支持链式操作的方法

2019-12-18,,,,

修改很简单,通过参数判断,然后返回下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)
})

您可能感兴趣的文章:

  • JavaScript对象链式操作代码(jquery)
  • JavaScript 对象链式操作测试代码
  • 原生js实现简单的链式操作

《让JavaScript中setTimeout支持链式操作的方法.doc》

下载本文的Word格式文档,以方便收藏与打印。