比如说,我写了一个5秒的定时器或延时器,js和浏览器是怎么控制这个时间的,也就是为什么5秒钟以后才执行,它的内部是怎么实现的,为什么5秒钟之前不会执行,这个时间是怎么控制的,特别想知道这个问题,网上也找不到相应的答案
1 回答
largeQ
TA贡献2039条经验 获得超7个赞
是定时器搞得鬼。JavaScript引擎都有一个定时器timer,当调用setTimeout
时,JS引擎会在设定的ms后将传入的函数放入事件队列,排队等待主线程调用。
这里涉及的知识包括线程、同步、异步、事和件循环。由于题主关注的问题在于如何控制延迟时间,所以这些问题不在赘述,不过这些知识点值得深入学习。
添加回答
举报
0/150
提交
取消