次世代 Hugo

智能を研ぎ、創造を編む

深入探討 Arrow Function 與 this

ECMAScript 5 無論是 Function Declaration 或 Anonymous Function,都可以使用 this 搭配 call()、apply() 與 bind() 動態改變 this,ECMAScript 2015 支援了 Arrow Function 後,這對原本的 this 、call() 、apply() 與 bind() 有任何影響嗎 ?

如何在 Callback 中使用 this ?

ECMAScript 提供眾多的 Higher Order Function,如 Array.prototype.forEach() ,當我們將 Callback 傳入後,且該 Callback 含有 this 想讀取 Object 的 Property 時,就會出現錯誤,該怎避免這個常見的問題呢 ?

實務上如何使用 Closure ?

Closure 是 ECMAScript 代表性功能,也是 Functional Programming 基礎,很多神妙的 FP 機制都是由 Closure 展開,善用 Closure 將使得程式碼更為精簡,可讀性更高,也更容易維護。

深入探討 Closure 黑魔法

Closure 是 ECMAScript 的一大特色,但由於對其不了解,因此很多人不敢使用 Closure;或者雖然會使用 Closure,但仍然對其原理一知半解。本文以 Runtime 角度深入探討 Closure 底層機制,讓我們徹底了解 Closure 的黑魔法。

Promise 之 finally() 與 Finally

實務上有些邏輯在 Fulfilled Promise 與 Rejected Promise 都需被執行,導致 Fulfilled Handler 與 Rejected Handler 都寫了一份,此時可使用 ECMAScript 2018 的 finally() 與 try catch finally,只需寫一份邏輯即可。