在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 教程/ HTML/ 前言
Promise 測試
實戰(zhàn) Promise
用語集
前言
什么是 Promise
API Reference
Advanced

前言

寫作初衷

本書的目的是以目前還在制定中的 ECMAScript 6 Promises 規(guī)范為中心,著重向各位讀者介紹 JavaScript 中對 Promise 相關(guān)技術(shù)的支持情況。

通過閱讀本書,我們希望各位讀者能在下面三個目標(biāo)上有所收獲。

  • 學(xué)習(xí) Promise 相關(guān)內(nèi)容,能熟練使用 Promise 模式并進(jìn)行測試
  • 學(xué)習(xí) Promise 適合什么、不適合什么,知道 Promise 不是萬能的,不能什么都想用 Promise 來解決
  • 以 ES6 Promises 為基礎(chǔ)進(jìn)行學(xué)習(xí),逐漸發(fā)展形成自己的風(fēng)格

像上面所提到的那樣,本書主要是以 ES6 Promises,即 JavaScript 的標(biāo)準(zhǔn)規(guī)范為基礎(chǔ)的、Promise 的相關(guān)知識為主要講解內(nèi)容。

在 Firefox 和 Chrome 這樣技術(shù)比較超前的瀏覽器上,不需要安裝額外的插件就能使用 Promise 功能,此外 ES6 Promises 的規(guī)范來源于 Promises/A+ 社區(qū),它有很多版本的實現(xiàn)。

我們將會從基礎(chǔ) API 開始介紹可以在瀏覽器的原生支持或者通過插件支持的 Promise 功能。 也希望各位讀者能了解這其中 Promise 適合干什么,不適合干什么,能根據(jù)實際需求選擇合適的技術(shù)實現(xiàn)方案。

開始閱讀之前

本書的閱讀對象需要對 JavaScript 有基本的了解和知識。

如果你讀過上面的其中一本的話,就應(yīng)該非常容易理解本書的內(nèi)容了。

另外如果你有使用 JavaScript 編寫 Web 應(yīng)用程序的經(jīng)驗,或者使用 Node.js 編寫過命令行、服務(wù)器端程序的話,那么你可能會對本文中的一些內(nèi)容感到非常熟悉。

本書的一本分章節(jié)將會以 Node.js 環(huán)境為背景進(jìn)行說明,如果你有 Node.js 基礎(chǔ)的話,那么一定會非常容易理解這部分內(nèi)容了。

格式約定

  • 關(guān)于 Promise 的術(shù)語請參考術(shù)語集。
    • 一般一個名詞第一次出現(xiàn)時都會附帶相關(guān)鏈接。
  • 實例方法都用 instance#method 的形式。
    • 比如 Promise#then 這種寫法表示的是 Promise 的實例對象的 then 這一方法。
  • 對象方法都采用 object.method 的形式。

    • 這沿用了 JavaScript 中的使用方式,Promise.all 表示的是一個靜態(tài)方法。

      這部分內(nèi)容主要講述的是對正文部分的補(bǔ)充說明。

推薦瀏覽器

我們推薦使用內(nèi)置對 Promise 支持的瀏覽器來閱讀本書。

Firefox 和 Chrome 的話都支持 ES6 Promises 標(biāo)準(zhǔn)。

此外,雖然不是推薦的閱讀環(huán)境,但是讀者還是能在 iOS 等移動終端上閱讀本書。

http://wiki.jikexueyuan.com/project/javascript-promise-mini-book/images/0.1.png" alt="picture0.1" />

運(yùn)行示例代碼

本網(wǎng)站使用了 Promise 的 Polyfill 類庫,因此即使在不支持 Promise 的瀏覽器上也能執(zhí)行示例代碼。

此外像下面這樣,各位讀者可以通過運(yùn)行按鈕來運(yùn)行可執(zhí)行的示例代碼。


    var promise = new Promise(function(resolve){
        resolve(42);
    });
    promise.then(function(value){
        console.log(value);
    }).catch(function(error){
        console.error(error);
    });

如果你對哪里有疑問的話,都可以現(xiàn)場修改代碼并執(zhí)行,以加深對該部分代碼的理解。

本書源代碼/License

本書中示例代碼都可以在 GitHub 上找到。

本書采用 AsciiDoc 格式編寫。

此外代碼倉庫中還包含本書示例代碼的測試代碼。

源代碼的許可證為 MIT 許可證,文章內(nèi)容可以基于 CC-BY-NC 使用。

意見和疑問

如果有意見或者問題的話,可以直接在 GitHub 上提 Issue 即可。

此外,你也可以在 在線聊天 上留言。

各位讀者除了能免費(fèi)閱讀本書,也有編輯本書的權(quán)利。你可以在 GitHub 上通過 Pull Requests 來貢獻(xiàn)自己的工作。

上一篇:用語集下一篇:API Reference