es6新特性
- 箭头函数 ()=> 简化了普通函数的写法,特点是没有this
- 模板字符串: `` 内部使用${},更好的解决了字符串拼接的方式
- 对象数组解构
- 延展运算符: ... 用在函数中,接受未被参数接收的剩余参数,返回一个伪数组,例如
cost a = 1 const b = 2 const c = 3 const fn = (x,...y) => { console.log(y) } fn(a,b,c) // [2,3]
- 模块化:导入 import ;导出 export(按需导出);export default(默认导出)
- class类,本质是原型链的语法糖
- 函数默认参数,可以在参数接受的时候避免传参失误导致一系列问题,给函数参数设置默认值
- 对象属性简写,当对象属性与值相同时,可以只写一个,例如
const name=张三 const obj={ name}
- Promise解决了回调地狱的问题,通过.then接受正确的返回值,通过.catch捕捉错误,.finally无论错误或是失败都会执行该回调中的代码
- let与const 声明变量与常量,存在块级作用域;解决了var声明变量存在变量提升与不存在块级作用域的问题
- 数组falt方法,传入一个数值型参数代表会遍历的数组深度,将所有遍历过的数据存入到一个数组中(扁平化数组),传入Infinity表示展开任意深度的数组。