深入理解ES6-8.Set和Map

ES6中提供了Set、Map数据容器,Set是无重复值的有序列表。根据 `Object.is() `方法来判断其中的值不相等,以保证无重复。 Set 会自动移除重复的值,因此你可以使用它来过滤数组中的重复值并返回结果。 Set并不是数组的子类型,所以你无法随机访问其中的值。但你可以使用` has()` 方法来判断某个值是否存在于 Set 中,或通过 `size` 属性来查看其中有多少个值。 Set 类型还拥有`forEach() `方法,用于处理每个值。

深入理解ES6-10.增强的数组功能

在 ES6 之前创建数组主要存在两种方式: `Array` 构造器与数组字面量写法。这两种方式都需要将数组的项分别列出,并且还要受到其他限制。将“类数组对象”(即:拥有数值类型索引与长度属性的对象) 转换为数组也并不自由,经常需要书写额外的代码。为了使数组更易创建,ES6 新增了` Array.of()` 与 `Array.from()` 方法。

深入理解ES6-12.代理与反射接口

通过调用 `new Proxy()` ,你可以创建一个代理用来替代另一个对象(被称之为目目标对象) ,这个代理对目标对象进行了虚拟,因此该代理与该目标对象表面上可以被当作同一个对象来对待。

深入理解ES6-9.迭代器与生成器

迭代器是被设计专用于迭代的对象,带有特定接口。所有的迭代器对象都拥有 next() 方法,会返回一个结果对象。该结果对象有两个属性:对应下一个值的 value ,以及一个布尔类型的 done ,其值为 true 时表示没有更多值可供使用。迭代器持有一个指向集合位置的内部指针,每当调用了 next() 方法,迭代器就会返回相应的下一个值。