[..]中可以放置任意合法表达式;计算属性名最常见的用法可能就是和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(..)几乎一样Object.is(..):静态函数Object.is(..)执行比===比较更严格的值比较;Object.is(..)调用底层的SameValue算法;如果需要严格识别NaN或者-0,那么应该选择Object.is(..);[[Prototype]]用于行为委托[[Prototype]]链接的空对象;[[OwnPropertyKeys]]算法定义的;其顺序为(首先,按照数字上升排序,枚举所有整数索引拥有的属性;然后,按照创建顺序枚举其余的拥有的字符串属性名;最后,按照创建顺序枚举拥有的符号属性;)