javaScript运行相关

44 阅读1分钟

1、js事件运行机制

js是单线程的,先同步后异步

执行顺序:同步任务、process.nextTick、微任务、宏任务、serImmediate()

  • 宏任务:计时器、Ajax请求、读取文件操作

  • 微任务:promise.then

2、闭包

函数套函数,外部函数可以访问内部函数的变量,内部函数就是闭包

  • 作用:延长内部变量的生命周期、外部可以访问函数内部变量
  • 缺点:局部变量会常驻内存,容易造成内存泄漏

3、Promise核心原理

  • 三种状态:pending(等待)、fulfilled(成功)、rejected(失败)
  • 状态一旦变更不可逆
  • 执行顺序:执行同步代码、执行成功或者失败执行不同回调至微任务队列
  • 链式调用:执行then()方法,接受两个参数 onFulfilled(成功回调)、onRejected(失败回调),返回一个新的Promise,实现链式调用
  • 错误捕获:链式调用中错误自动传递,被最近的catch捕获