更多ES2015/ES6 全新語言特性
省略 "function"
() => ({})
() => {}
var obj = { foo () {}, boo () {} }
...args 展開運算子
var arr1 = [1, 2, 3]
arr1 = [...arr1, 3]
這樣的寫法,會改變記憶體位置,對於效能的調校上會有幫助
如果是用
arr1.push(3);
因為arr1 的記憶體位置沒有變化,所以除非儲存上次的內容,拿來比對現在的內容,不然不知道內容更改,需要重新渲染畫面。
只有實作 iterators 的才可以使用 展開運算子
(可能不完整、不正確,待完善)
o[Symbol.iterators] = function*() { yield 100; yield 200; }
for (let i of list) {
}
解構賦值
類別
增加新的類別語法 (並沒有新的架構,目的是為了提升可讀性)
constructor
get
set
模組化
ESM ES Modules
需要用到的變數再 匯出 匯入
Last updated