什么是 Event Loop?【JS面试题】

作者: 前端小野2分类: 野生技能协会 发布时间: 2021-04-20 09:00:17 浏览:21114 次

什么是 Event Loop?【JS面试题】

枫中看雨:
老师,你说的调用栈空的话就会将callback queue中的任务放进调用栈。那要是调用栈中有一堆任务,而且任务足够多,event loop循环检测到callback queue中存在任务但是调用栈不为空,一直等,那可能最后轮到这个回调函数执行时,等待时间已经超过自己定义的3s啊,有没有可能发生这种情况

【回复】回复 @哈默聊前端 :不对,错了,这个占用5秒只是滞后5s,那一秒过了自动就加入进去了。只是没等到它执行[捂脸]
【回复】回复 @哈默聊前端 :没可能吧,不会轮空,应该是滞后,比如定时1s,如果一直占用了5s,那就是六秒后执行
urttoyon:
有个小问题想问一下,up你说那段js执行完只需要几毫秒,那如果我的setTimeout定时也是一两毫秒呢?就是说,定时器的时间比js执行完所有同步代码所需时间短,会出现什么结果?还是要等所有的代码执行完,Event Loop才开始吗?我刚学js,如果有不对的地方,请多包涵[喜极而泣]

【回复】回复 @哈默聊前端 :[热词系列_知识增加]感谢解答
【回复】对的,你理解的没错,定时器里的回调函数要等~
【回复】实际上setTimeout最短也有4ms左右的延迟.所以严格意义上来说setTimeout是有误差的
Rebecca焦小澄:
老师声音超级好听呀!老师,可以帮忙讲讲浏览器和nodejs中event loop的区别吗?

桂夏丹:
害 可能这就是我找不到工作的原因吧 我能部署一个个人博客并完成前后端的功能 却讲不清楚这些基础的东西 自己会用但是自己讲不清楚原理…感谢大佬分享自己的知识

你本无意丶穿堂风:
老师,视频里当执行到setTimeout时,这个定时器是设置再哪,也是在调用栈里吗,还是单独放在其他地方

【回复】回复 @哈默聊前端 :好的[OK]
Maniac_Cola:
宝藏[热词系列_吹爆],能讲讲同步异步吗,这块不太懂

一枫红叶QIU:
定时器里写的是3秒,老师一直讲的是5秒,这是不是口误?

BiuMankii:
面试官:event loop讲一下 这样回答不知道准不准确:event loop事件循环,是js中循环检查callback queue(回调队列)中是否有未执行的回调函数、并且将其推入call stack(调用栈)的机制,例如定时器等异步回调中的函数,就会在定时器结束后进入回调队列中,当事件循环在下一次检查时,就会把它推入调用栈,调用栈按顺序就会执行这个回调函数了。

91699791441_bili:
up猪 eventloop里面的定时器 真的可以在delay时间内执行吗?

风归叶:
回调函数中如果是比较耗时的的代码,是不是就阻碍其它的代码的执行了?

知识分享官 编程 经验分享 WEB JAVASCRIPT JS 前端 VUE WEB前端 打卡挑战

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!