ES6的新特性

107 阅读1分钟

1. const常量/let变量

  • 和var的区别
    1. 没有变量提升
    2. 不能重复声明
    3. 有块级作用域
    4. 不会添加到window上

2. 默认参数

  • 比如function fn(id='123'){}

3. 扩展运算符...

  • ...arr可以展开数组
  • [...arr1,...arr2]可以拼接数组

4. 模版字符串

`${name}今年${age}岁了`

5. 剩余参数

function fn(name,...arr){}

6. 解构赋值

const {name,age} = student

7. 箭头函数()=>{}

  • 和普通函数的区别
    • 没有自己的this
    • 没有arguments对象
    • 没有原型对象
    • 不可以作为构造函数,不能使用new

8. object.key

  • 获取对象key的集合

9. promise

  • es6推出的新的异步编程解决方案

10. async/await

11. 对象属性同名简写

12. find/findIndex

  • find:找到返回被找元素,找不到返回undefined
  • findIndex:找到返回被找元素索引,找不到返回-1

13. for of/for in

  • for of:只可遍历数组
  • for in:遍历数组和对象

14. 新容器语法set

  • 允许存储任何类型的值,成员是唯一的,没有重复

15. 类语法class

  • function的语法糖

16. 数组的方法

ES7

  • includes:传入元素,数组中能找到返回true,否则返回false

ES8

  • object.values:获取对象的value集合
  • object.entries:获取对象的键值对集合