版权声明: https://blog.csdn.net/zgpeterliu/article/details/82261633
Classes(类)
我们知道“真正”语言中的类(Classes)。在 ES6 中类(Classes)其实是原型继承的语法糖。
扩展(Spread)
在函数中:
Let
let是新的var。 因为它有块级作用域。
但是,它不会向window分配任何内容:
不能使用let重新声明一个变量:
for in是ES5标准,遍历key.
for of是ES6标准,遍历value.
for … in循环将把name包括在内,但Array的length属性却不包括在内。
for … of循环则完全修复了这些问题,它只循环集合本身的元素:
然而,更好的方式是直接使用iterable内置的forEach方法,它接收一个函数,每次迭代就自动回调该函数。以Array为例:
var a = ['A', 'B', 'C'];
a.forEach(function (element, index, array) {
// element: 指向当前元素的值
// index: 指向当前索引
// array: 指向Array对象本身
alert(element);
});
迭代器(Iterators)
扫描二维码关注公众号,回复:
3307253 查看本文章
迭代器是一个比数组更动态的类型。
代理(Proxy)
代理可以用来改变对象的行为。 它们允许我们定义 trap 。
Symbols
Symbols 是一个新类型。 可用于创建匿名属性。