使用 indexOf() 尋找 Array 的 Index
若資料存在於 array,Array.prototype.indexOf() 會回傳其 index,否則回傳 -1。
若資料存在於 array,Array.prototype.indexOf() 會回傳其 index,否則回傳 -1。
ECMAScript 提供了 e,相當於 10 的 x 次方。
ECMAScript 除了有 Boolean Primitive 外,還有獨特的 Truthy Value 與 Falsy Value 概念;簡單的說,其他 Type 也能自動轉成 Boolean,這使得 if 與 && 與 || 有了更多應用。
String 雖然為 Primitive,但為什麼卻也能如 Object 有 lengh property 呢 ? 這一切的黑魔法都來自於 Primitive Wrapper。
Tuple 算是 FP 都會提供的資料型別,ECMAScript 雖然沒有提供 Tuple,但可使用 Array Destructuring 輕易實現。
ECMAScript 2015 支援了一般 OOP 常見的 Static Method,但其在 Prototype-based 下究竟是如何實作呢 ?
ECMAScript 是一個以 Object 與 Function 為主的語言,有別於 Class 為主的 OOP,ECMAScript 有獨特的 Property Descriptor,在 Object.create() 、 Object.defineProperty() 與 Object.getOwnPropertyDescriptor() 可使用。
ECMAScript 由 Object 與 Function 構成,傳統 OOP 的 Object 都必須由 Class 而來,但 ECMAScript 的 Object 卻有多種建立方式。
Object.keys() 與 for...in 的差異在於 Object.keys() 只能顯示目前 Object 的 Property,而 for...in 會連同 Prototype 的 Property 一併顯示。若 for...in 搭配 Constructor Function 或 Object.create() 時一切正常,但搭配 class 時,就無法顯示 Prototype 的 Property 了,為什麼會這樣呢 ?
ECMAScript 2015 除了支援一般 OOP 都有的 Class Declaration 外,還繼承了 ECMAScript 傳統,另外提供了 Class Expression,這使得根據條件動態建立 Class 成為可能。