7月22日-奇舞团关于when.js与promise的分享

时间:2022-06-01 13:26:48

关于when.js的使用见屈屈的分享

http://www.imququ.com/post/promises-when-js.html

关于promise的实现见月影的分享

http://www.wumii.com/item/18c3poL1y

两位都是360前端知名的大牛,他们的分享已经写的非常深入了。我就不再重复一遍了。

但是听完,总该留下点什么。

那么我关注两个东西:

1.when.js的适用场景。
  http://yiminghe.iteye.com/blog/1396751

  我写过一个小游戏,http://se.360.cn/weiboapp/crazy/game.html,如果在选择错误的情况下就会闪烁三下。

  那么这个过程是这样的:1.禁用答题框的可删功能 2.闪烁3次  3.打开答题框内容可删功能

  如果没有用when.js我们的代码大概是这样:

  disable();

  for(var i=0;i<3;i++)

   (function (){settimeout(function(){

    xxx(i);

  },1000);)}()

settimeout(function(){enable},3000);

如果我们使用了when.js之后:

代码就变成了

  defer.promise.then(disable()).then(blink()).then(enable);

还有一个关键的点:

  如果在blink()失败后,enable依然会执行。

2.promise的规范怎么用。

http://yiminghe.iteye.com/blog/1396751

这篇文章总结的不错。

ajax 和 domready之后的事情我们通常都会把他们写在一起,这样用来按需加载他们。

但如果(function(){

a();

b();

c();

})显然非常的不语义化。

他们到底是并行还是串行执行?

所以我们用promise规范来更好的实现这样的需求。

7月22日-奇舞团关于when.js与promise的分享的更多相关文章

  1. 12月22日《奥威Power-BI财务报表数据填报》腾讯课堂开课啦

    一扇可以通向任何地方的“任意门”,是我们多少人幼时最梦寐以求的道具之一.即使到了现在,工作中的我们还会时不时有“世界那么大,我想去看看”的念头,或者在突然不想工作的时刻,幻想着自己的家门变成了“任意门 ...

  2. Autodesk 最新开发技术研讨会 -8月22日-Autodesk北京办公室

    为了增进与广大中国地区Autodesk产品的二次开发人员的了解与互动,帮助中国地区的Autodesk产品二次开发人员了解Autodesk最新的二次开发技术动向,并获得Autodesk公司专业开发支持顾 ...

  3. 见见面、聊聊天 - 5月22日晚7点Meetup,三里屯绿树旁酒吧,畅谈云技术和应用

    总是邮件.QQ什么的线上聊,让我们见面吧,不怕见光死,呵呵.   我和同事会先抛砖引玉,给大家介绍一下Autodesk几款最新的云技术和解决方案,然后大家就可畅所欲言,*交流.来自五湖四海的人,为了 ...

  4. 2016年12月22日 星期四 --出埃及记 Exodus 21&colon;17

    2016年12月22日 星期四 --出埃及记 Exodus 21:17 "Anyone who curses his father or mother must be put to deat ...

  5. 转:&lbrack;置顶&rsqb; 从头到尾彻底理解KMP(2014年8月22日版)

    [置顶] 从头到尾彻底理解KMP(2014年8月22日版)

  6. 2016年11月22日 星期二 --出埃及记 Exodus 20&colon;13

    2016年11月22日 星期二 --出埃及记 Exodus 20:13 "You shall not murder.不可杀人.

  7. 2016年10月22日 星期六 --出埃及记 Exodus 19&colon;6

    2016年10月22日 星期六 --出埃及记 Exodus 19:6 you will be for me a kingdom of priests and a holy nation.' These ...

  8. 微软SQL Server认证最新信息(17年5月22日更新),感兴趣的进来看看哟

    之前一直有在关注微软认证的一些消息,由于最新的SQL Server认证加入了2016的相关内容,导致课程资料需要大部分更新,但是微软更新相对比较慢,并且经常改版,目前发现的最新的MCP Cert Pa ...

  9. 北京Uber优步司机奖励政策(4月22日)

    滴快车单单2.5倍,注册地址:http://www.udache.com/ 如何注册Uber司机(全国版最新最详细注册流程)/月入2万/不用抢单:http://www.cnblogs.com/mfry ...

随机推荐

  1. CF 468A 24 Game

    题目链接: 传送门 24 Game time limit per test:1 second     memory limit per test:256 megabytes Description L ...

  2. 转:不是技术牛人,如何拿到国内IT巨头的Offer

    转自:http://blog.csdn.net/lsldd/article/details/13506263 不久前,byvoid面阿里星计划的面试结果截图泄漏,引起无数IT屌丝的羡慕敬仰.看看这些牛 ...

  3. 显示win7桌面网络&period;reg

    显示win7桌面网络.reg Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\C ...

  4. CentOS 6&period;7安装Java JDK

    1.下载Java JDK 下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.htm ...

  5. js传递数组到后台

    //post方法不得行,各种问题...改为ajax就阔以了.//默认的话,traditional为false,即jquery会深度序列化参数对象,以适应如PHP和Ruby on Rails框架, // ...

  6. java&period;lang&period;AbstractMethodError&colon; org&period;mybatis&period;spring&period;transaction&period;SpringManagedTransaction&period;getTimeout&lpar;&rpar;Ljava&sol;lang&sol;Integer&semi; &Tab;at org&period;apache&period;ibatis&period;executor&period;SimpleExecutor&period;prepareStatement&lpar;SimpleExecutor&period;jav

    在整合spring和mybatis在执行数据库操作的时候报出了: java.lang.AbstractMethodError: org.mybatis.spring.transaction.Sprin ...

  7. C&plus;&plus;&colon; 带参数回调函数和不带参数的回调函数;

    在C++中,回调函数的应用比较广泛且重要. 通过传递函数指针到其他地方,能够实现远程回调的作用,能够实现远程调用而不需要事件触发信号或者其他机制来实现,方便而快捷: 首先,回调函数有两种形式:  静态 ...

  8. Postgres使用ALTER USER命令修改用户的密码、密码过期,锁定,解锁

    使用ALTER USER命令修改用户的密码.密码过期,锁定,解锁 (1)修改用户的口令,将用户的口令修改为新的密码 highgo=#create user test with password ‘te ...

  9. Java Selenium - 几种对话框处理Alert&bsol;confirm&bsol;prompt

    1. Alert , 先用常规办法定位到能触发alert的按钮 , 然后 Alert alert = driver.switchTo().alert(); alert.accept(); 如果aler ...

  10. tomcat生成调试日志配置

    创建文件logging.properties 文件存放于应用WEB-INF/classes下 文件内容如下:  org.apache.juli.FileHandler.prefix = error-d ...