let const 和var的区别 1.var声明的变量有变量提升,let const没有 2.let 声明为变量 const 为常量 3.const 复制对象或者数组,对象与数组可以被改变,因为cosnt保证的指针不变 4.let const 变量为块级作用域 5.let const 变量不能重复 6.let const 会形成暂时性死区 介绍promise 1.因为传统异步是通过回调函数方式结果的,为了解决回调函数地狱导致的可读性差,维护成本困难,所以有了promise 2. promise 三种状态 pendding (进行中) resolve(已完成) reject(已拒绝) 3.promise中原型的方法 then catch 捕获错误,then执行状态改变,then返回新的promise,then也可以执行 下一个promise任务.支持 .then 通过链式调用完成多个异步任务 4.new promise 中函数为同步执行,.then中函数为异步执行 5.promise上静态方法: all race resolve reject等 5.1 all处理并发业务,所以的都成功了执行then 5.2 race 多个promise 中 有一个成功执行then 5.3 resolve 将状态变为已完成 5.4 reject 将状态变为已拒绝 如何解决回调函数代码可读性差 使用promsie async await 的理解 1. async函数返回值为 promsie实例 2. await 只能在async中使用 3. async await 同步写法异步的程序 4. await 后面需要跟 promsie实例 4.1 async 返回的 —> await返回值 return 4.2 new promsie —> await 返回值 resolve实参 4.3 then返回的promsie —> await 返回值 then中函数的return class的作用 1. 可以实例化对象 2. extends 继承 3. constructor 构造器,当class类执行时候,触发constructor构造器 4. super触发父类中的构造器 5. static 关键字可以定义,类的静态属性和静态方法 class 中super的应用 1.触发父类的构造器 2.在子类中调用父类的静态方法 es6对象扩展的内容 1.解构赋值 2.对象属性简写 3.扩展运算符 异步编程语言进化的过程是什么? 回调函数 —> promsie —> generator —> async await 箭头函数的特点 1. 箭头函数代替匿名函数 2. 没有this 使用上一层thsi 3. 没有arguemets 用rest参数代替