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


Posted in Javascript onJune 19, 2015

修改很简单,通过参数判断,然后返回下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复选框CHECKBOX全选、反选
Aug 30 Javascript
Json对象与Json字符串互转(4种转换方式)
Mar 27 Javascript
js confirm()方法的使用方法实例
Jul 13 Javascript
纯javascript实现四方向文本无缝滚动效果
Jun 16 Javascript
由ReactJS的Hello world说开来
Jul 02 Javascript
Angular实现的简单查询天气预报功能示例
Dec 27 Javascript
Vue3.0 响应式系统源码逐行分析讲解
Oct 14 Javascript
vue2.0 获取从http接口中获取数据,组件开发,路由配置方式
Nov 04 Javascript
node crawler如何添加promise支持
Feb 01 Javascript
javascript中innerHTML 获取或替换html内容的实现代码
Mar 17 Javascript
浅析JavaScript 函数防抖和节流
Jul 13 Javascript
如何将Node.js中的回调转换为Promise
Nov 10 Javascript
js控制文本框输入的字符类型方法汇总
Jun 19 #Javascript
详细解读AngularJS中的表单验证编程
Jun 19 #Javascript
JavaScript中模拟实现jsonp
Jun 19 #Javascript
基于jQuery+Cookie实现的防止刷新的在线考试倒计时
Jun 19 #Javascript
MVVM模式中ViewModel和View、Model有什么区别?
Jun 19 #Javascript
JavaScript中数据结构与算法(五):经典KMP算法
Jun 19 #Javascript
使用AngularJS编写较为优美的JavaScript代码指南
Jun 19 #Javascript
You might like
PHP4实际应用经验篇(6)
2006/10/09 PHP
php数据库配置文件一般做法分享
2012/07/07 PHP
PHP抽奖算法程序代码分享
2015/10/08 PHP
PHP面试题之文件目录操作
2015/10/15 PHP
php基于PDO连接MSSQL示例DEMO
2016/07/13 PHP
超级简单的图片防盗(HTML),好用
2007/04/08 Javascript
jQuery的写法不同导致的兼容性问题的解决方法
2010/07/29 Javascript
Jquery post传递数组方法实现思路及代码
2013/04/28 Javascript
浅析javascript操作 cookie对象
2014/12/26 Javascript
Javascript实现鼠标框选操作  不是点击选取
2016/04/14 Javascript
jquery实现拖动效果
2016/08/10 Javascript
详解vue组件化开发-vuex状态管理库
2017/04/10 Javascript
angular动态删除ng-repaeat添加的dom节点的方法
2017/07/20 Javascript
Vue 全家桶实现移动端酷狗音乐功能
2018/11/16 Javascript
vue input实现点击按钮文字增删功能示例
2019/01/29 Javascript
vue中利用simplemde实现markdown编辑器(增加图片上传功能)
2019/04/29 Javascript
使用Vant完成DatetimePicker 日期的选择器操作
2020/11/12 Javascript
[23:21]Ti4 冒泡赛第二轮DK vs C9 2
2014/07/14 DOTA
合并Excel工作薄中成绩表的VBA代码,非常适合教育一线的朋友
2009/04/09 Python
python使用自定义user-agent抓取网页的方法
2015/04/15 Python
利用 python 对目录下的文件进行过滤删除
2017/12/27 Python
mvc框架打造笔记之wsgi协议的优缺点以及接口实现
2018/08/01 Python
Django基础知识 web框架的本质详解
2019/07/18 Python
python pptx复制指定页的ppt教程
2020/02/14 Python
Python3以GitHub为例来实现模拟登录和爬取的实例讲解
2020/07/30 Python
简述索引存取方法的作用和建立索引的原则
2013/03/26 面试题
最美乡村医生事迹材料
2014/06/02 职场文书
商场租赁意向书
2014/07/30 职场文书
乡镇计划生育工作汇报
2014/10/28 职场文书
卖车协议书范文
2016/03/23 职场文书
再次探讨go实现无限 buffer 的 channel方法
2021/06/13 Golang
Oracle 触发器trigger使用案例
2022/02/24 Oracle
Java实战之课程信息管理系统的实现
2022/04/01 Java/Android
Python OpenCV实现图形检测示例详解
2022/04/08 Python
小喇叭开始广播了! 四十多年前珍贵老照片
2022/05/09 无线电
Win10鼠标宏怎么设置?win10系统鼠标宏的设置方法
2022/08/14 数码科技