JavaScript高级面试知识点准备(三)

1.什么是单线程,和异步的关系
  • 单线程就是同时只做一件事,两段 JS 不能同时执行
  • 原因就是为了避免 DOM 渲染的冲突
  • 异步是一种“无奈”的解决方案,虽然有很多问题
2. 什么是 event-loop
  • 事件轮询,JS 实现异步的具体解决方案
  • 同步代码,直接执行
  • 异步函数先放在 异步队列 中
  • 待同步函数执行完毕,轮询执行 异步队列 的函数
3.是否用过 jQuery 的 Deferred
  • 可以 jQuery 1.5 对 ajax 的改变举例
  • 说明如何简单的封装、使用 Deferred
  • 说明 promise 和 Deferred 的区别
4.Promise 的基本使用和原理
  • 基本语法回顾
  • 异常捕获
  • 多个串联
  • Promise.all 和 Promise.race
  • Promise 标准
5.介绍一下 async/await
  • 基本语法
  • 使用了 Promise ,并没有和 Promise 冲突
  • 完全是同步的写法,再也没有回调函数
  • 但是:改变不了 JS 单线程、异步的本质

你可能感兴趣的:(JavaScript高级面试知识点准备(三))