[..]
中能夠放置任意合法表達式;計算屬性名最多見的用法可能就是和Symbols共同使用;[[Prototype]]
=>
的關注多數都在於從代碼中去掉function、return和{..}節省了那些寶貴的鍵盤輸入;對=>
的關注多數都在於從代碼中去掉function、return和{..}節省了那些寶貴的鍵盤輸入;在箭頭函數內部,this綁定不是動態的,而是詞法的;底線:=>
是關於this、arguments和super的詞法綁定。這個ES6的特性設計用來修正一些常見的問題,而不是bug、巧合或者錯誤[...gclef].length
=>
箭頭函數這樣的特性看起來是爲了使代碼更簡潔的語法,實際上它有很是特別的行爲特性,應該只在適當的時候使用{value: .., done: true/false}
[[Prototype]]
委託連接-一般被誤稱爲「繼承」或者使人迷惑的標識爲「原型繼承」;在構造器中,super自動指向「父構造器」,在方法中,super會指向「父對象」,這樣就能夠訪問其屬性/方法了;for..of
和...
這些新語言特性來消耗迭代器yield/next
消息傳遞)生成供迭代消耗的值[[prototype]]
鏈中相對引用的棘手問題reject(..)
和Promise.reject(..)
並不區分接收的值是什麼;Promise.all([..])
等待全部都完成(或者第一個拒絕),而Promise.race([..])
等待第一個完成或者拒絕;Promise.all([])
將會當即完成(沒有完成值),Promise.race([])
將會永遠掛起。所以建議,永遠不要用空數組使用這些方法;splice(..)
、push(..)
等)和concat(..)
;要清楚TypedArray中德元素是限制在聲明的位數大小中的;要解決平方值溢出的侷限,可使用TypedArray.from(..)
函數;(map)
的主要機制get(..)
和set(..)
方法完美代替has(..)
中的比較算法和Object.is(..)
幾乎同樣[[Prototype]]
用於行爲委託[[Prototype]]
連接的空對象;[[OwnPropertyKeys]]
算法定義的;其順序爲(首先,按照數字上升排序,枚舉全部整數索引擁有的屬性;而後,按照建立順序枚舉其他的擁有的字符串屬性名;最後,按照建立順序枚舉擁有的符號屬性;)