ECMAScript 之 Rest Parameter
對 Function 能否支援 無限 Argument,一直是檢驗一個語言的指標。在 ECMAScript 5 提供了 arguments Array-like Object;ECMAScript 2015 則提供了更好的 Rest Parameter 取代 arguments。
對 Function 能否支援 無限 Argument,一直是檢驗一個語言的指標。在 ECMAScript 5 提供了 arguments Array-like Object;ECMAScript 2015 則提供了更好的 Rest Parameter 取代 arguments。
除了使用 Promise.resolve() 與 Promise.reject() 建立 Promise 外,也可使用 Promise Constructor 建立 Promise,其 Argument 為 Executor Function,提供了 resolve() 與 reject(),可用來建立 Fulfilled Promise 與 Rejected Promise。
ECMAScript 2015 的 Spread Operator 是很有創意的發明,讓很多操作都簡化成 ... 即可,且可讀性更佳。
若想自行建立 Rejected Promise,ECMAScript 提供了三種方式。
若想自行建立 Fulfilled Promise,ECMAScript 提供了三種方式。
有了 Promise 後應盡量避免使用 Nested Callback,但並不表示 Nested Promise 也不好,有些需求剛好適合 Nested Promise。
ECMAScript 行尾要不要加 Semicolon 一直是很爭議的議題,傳統都會加上 ;,但最近則發現越來越多 Project 都不加,如 Vue、Redux … 等,到底 ASI 是什麼 ? 行尾不加 ; 會有什麼問題嗎 ?
WebStorm 的 Browser Popup 對於純 HTML 很有幫助,但若對於 Vue 則意義則不大,該如何將 Browser Popup 關起來呢 ?
由於 Promise 是 Asynchronous,因此回傳時間不確定,若想實作出超過指定時間就 Timeout,可使用 Promise.race() 實作。
Promise.all() 處理 Promise Array 時,必須所有的 Promise 為 Fulfilled 才行,只要有一個 Promise 為 Rejected 就會失敗,若想有幾個 Fulfilled 就顯示幾個,而放棄 Rejected,就得使用 Promise.allSettled()。