整理的是高频知识点,不足之处还请指出哈,后续会完善编程
新特性json
let、const、var三者区别数组
let声明变量,const声明常量promise
let、const都有块级做用域,而var没有异步
var存在变量提高,而let、const不会async
const与let最大不一样在于,const声明后没法再次赋值函数
箭头函数与普通函数区别this
set、map的区别spa
set用于数据重组,map用于数据储存对象
set:
map:
Class的理解
class能够看做是一个语法糖,只是让对象原型的写法更清晰,更像面向对象编程语法
class不存在变量提高,需先定义再使用
Promise的理解
Promise自己是同步的当即执行函数,行resolve或者reject的时候, 此时是异步操做, 会先执行then/catch等,当主栈完成后,才会执行resolve/reject中存放的方法,打印结果是一个Promise实例
Async/Await的理解
Async函数返回一个 Promise 对象,当函数执行的时候,一旦遇到 await 就会先返回,等到触发的异步操做完成,再执行函数体内后面的语句
Await含义为等待,也就是 async 函数须要等待await后的函数执行完成而且有了返回结果以后,才能继续执行下面的代码
forEach、for in、for of三者区别
forEach更多用来遍历数组
for in 经常使用来遍历对象或json,循环出的是key
for of数组对象均可以遍历,循环出的是value