解构赋值是对赋值运算符的一种扩展;
它针对数组和对象来进行操作;
优点:代码书协商简洁易读;
例子:
let node = { type: 'iden', name: 'foo' }
let { type, name } = node;
console.log(type, name);
对数组解构:
let arr = [1, 2, 3];
let [a, b, c] = arr; console.log(a, b, c); </script>
Set方法
ES6提供了新的数据结构set(集合)。它类似于数组,但成员的值都是唯一的,集合实现了iterator接口,所以可以使用「扩展运算符』和「 for...of...』。进行遍历,集合的属性和方法:
- size返回集合的元素个数
- add增加一个新元素,返回当前集合
- delete删除元素,返回boolean值
- has检测集合中是否包含某个元素,返回boolean值
Weakset:
1.不能传入非对象类型的参数.
2.不能迭代.
3.没有forEach()
4.没有size属性
.class类
ES6提供了更接近传统语言的写法,引入了Class(类)这个概念,作为对象的模板。通过class关键字,可以定义类。基本上,ES6的class可以看作只是一个语法糖,它的绝大部分功能,ES5都可以做到,新的class写法只是让对象原型的写法更加清晰、更像面向对象编程的语法而已。
知识点;
- class声明类
- constructor定义构造函数初始化
- extends继承父类
- super调用父级构造方法
- static定义静态方法和属性
- 父类方法可以重写