念念不忘,必有迴響。有一口氣,點一盞燈,有燈就有人。

如何使 Function 只執行一次 ?

如何使 Function 只執行一次 ?

實務上某些 function 會傳入 Array.prototype.forEach(),但我們只想執行一次而已,如符合條件就只執行一次,其餘僅管符合條件,但都不執行,我們該怎麼做呢 ?

深入探討 Call()、Apply()、Bind() 與 This

深入探討 Call()、Apply()、Bind() 與 This

ECMAScript 的一大特色是 Function 能透過 call()apply()bind() 去動態改變 this,尤其在寫 Vue 時特別重要,因為 Vue 預設會將 this 指向 Vue Instance,若你自行抽 function 時,觀念不清楚很容易使 this 就指向 undefined,所以寫 Vue 一定要搞清楚 ECMAScript 的 this

ECMAScript 之 Arrow Function 與 This

ECMAScript 之 Arrow Function 與 This

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

如何將 Object 轉成 Array ?

如何將 Object 轉成 Array ?

由於 ECMAScript 提供了 Object Literal,因此建立 object 非常簡單,特別適合將 function 的 argument 以 object 表示,又由於 ECMAScript 的 object 與 array 非常類似,若能將 object 轉成 array,就能善用 Array.prototype 下豐富的 method。

如何判斷 undefined ?

如何判斷 undefined ?

undefined 是 ECMAScript 很特殊的存在,實務上有多種判斷方式。

如何手動執行所有 VeeValidate 驗證 ?

如何手動執行所有 VeeValidate 驗證 ?

VeeValidate 雖然在 input event 就會執行驗證,但實務上可能會需要在 Submit 按下時,重新對所有欄位進行驗證,尤其當 component 又包含其他 component 時,該如何對所有 component 進行驗證呢 ?

如何將 Focus 自動跳到 VeeValidate 驗證錯誤欄位 ?

如何將 Focus 自動跳到 VeeValidate 驗證錯誤欄位 ?

實務上在驗證欄位時,不單單只是顯示錯誤訊息而已,實務上可能會需要 alert() 顯示錯誤訊息,還必須要將 Focus 回到錯誤欄位,VeeValidate 內建並沒有支援此功能,必須自行實作。

為什麼 Object 與 Array 是 Truthy Value ?

為什麼 Object 與 Array 是 Truthy Value ?

原則上 empty value 都是 Falsy Value,但有兩個例外:Object 與 Array 永遠是 Truthy Value,這是為什麼呢 ?

如何判斷 null 與 undefined ?

如何判斷 null 與 undefined ?

nullundefined 是 ECMAScript 很特別的存在,實務上常常必須判斷 nullundefined,但如何才是最好的判斷方式呢 ?

ECMAScript 之 Logic Operator

ECMAScript 之 Logic Operator

&&|| 為 Logic Operator,在一般語言,Logic Operator 的左右兩側 Expression 都是 Boolean,回傳結果亦是 Boolean,但 ECMAScript 的 Logic Operator 允許左右兩側 Expression 可以是非 Boolean,因而衍生出一些其他的應用。