滴滴前端面试真题及详细答案(实战口语版).docxVIP

  • 1
  • 0
  • 约6.64千字
  • 约 8页
  • 2026-09-11 发布于河北
  • 举报

滴滴前端面试真题及详细答案(实战口语版).docx

滴滴前端面试真题及详细答案(实战口语版)

一、JavaScript核心基础(滴滴一面高频必考)

1.讲讲EventLoop执行机制,浏览器和Node环境有什么区别?

参考答案:EventLoop核心就是同步代码优先执行,异步代码入队列,主线程清空后循环读取队列执行。

浏览器环境队列分优先级:微任务宏任务。先执行所有同步代码,再清空本轮所有微任务(Promise.then、async/await、queueMicrotask),最后执行一个宏任务(setTimeout、setInterval、AJAX、DOM事件),之后循环往复。

Node旧版本和浏览器差异很大,新版本基本对齐,但核心区别:Node会分阶段执行宏任务(timers、poll、check等),单个阶段宏任务全部执行完,再统一执行微任务,而浏览器是一次只执行一个宏任务。日常开发中,我们写的普通异步代码,两者执行结果基本一致。

2.Promise有几种状态?能不能手动终止Promise?

参考答案:三种状态:pending(等待)、fulfilled(成功)、rejected(失败),状态一旦改变就不可逆。

Promise本身没有原生终止方法,日常终止有两种常用方案:

1)封装中断标识:定义全局flag,在then/catch中判断标识,中断后续逻辑;

2)使用AbortCont

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档