Es6是什么:
ES6是ECMAScript 6的缩写简称,是javascript的核心语法,它是ECMAScript的第6个版本.2015 年 6 月,ECMAScript 6 正式通过,成为国际标准
1.说出至少5个ES6的新特性,并简述它们的作用。(简答题)
1、 let关键字,用于声明只在块级作用域起作用的变量。
2、 const关键字,用于声明一个常量。
3、 结构赋值,一种新的变量赋值方式。常用于交换变量值,提取函数返回值,设置默认值。
4、 Symbol数据类型,定义一个独一无二的值。
5、 Proxy代理,用于编写处理函数,来拦截目标对象的操作。
6、 for…of遍历,可遍历具有iterator 接口的数据结构。
7、 Set结构,存储不重复的成员值的集合。
8、 Map结构,键名可以是任何类型的键值对集合。
9、 Promise对象,更合理、规范地处理异步操作。
10、Class类定义类和更简便地实现类的继承。
**解构赋值:**
- 可以同时给多个变量赋值
- 不使用第三个变量的前提下也能交换两个变量的值
- 函数可以使用解构赋值的方式返回值同时可以给多个变量赋值
- 函数传参 function aa({name=“王五”,age}){} aa({age:“18”,name:“张三”}) 可以不用考虑顺序问题了
**模板字符串**
`` 可以换行定义,可以解析变量,空格回车会输出出来,变量通过{}解析,函数通过{函数名()}调用symbol
Es6新增的数据类型特点:
- 唯一的 不需要new 一般定义属性 和常量
- 不能使用for in
- 使用[]存储
- 取值的时候也要用[] 相同参数 Symbol() 返回的值不相等
class
- 使用class 定义的类 没有变量提升
- 使用extends 关键字继承
- 子类必须在constructor方法中调用super(name,age)方法用来新建父类的this对象
- 构造方法 constructor(){ this.name = name}
注意:
- 在类中声明方法的时候,千万不要给该方法加上function关键字
- 方法之间不要用逗号分隔,否则会报错
案例:
下面展示一些内联代码片
。
class aa{
constructor(name,age){
this.name = name
this.age &