作者回复: 应该说raf的回调任务会在每一帧的开始执行
作者回复: 不管在哪里请求setTimeout,它的回调函数都是在宏任务中执行的。
不过在微任务中产生了新的微任务,新的微任务还是在当前的微任务队列中,所以如果在微任务中不停产生新的微任务,是会阻塞页面的!
作者回复: 会啊,一个任务在执行的时候是不会被中断的,即使有再高优先级的任务,都需要等到当前dr任务执行结束,所以如果raf回调函数中的代码过于耗时的话,那么会影响渲染帧率!
等当前任务执行结束循环系统才会挑下个选优先级高的任务执行,因为用户输入的有限级高于raf的回调,所以会优先执行用户输入!
作者回复: keynote啊