7月22日-奇舞團關於when.js與promise的分享


關於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規范來更好的實現這樣的需求。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM