文章 评论 浏览 31
我实际测了下,直接btn.click() 和 页面点击按钮输出不一样。
btn.click()
可以看到,btn.click() 时,两个 handler 显然合并在同一个 event loop 执行了;而在页面里点击按钮则不一样。这个是浏览器自身实现细节,我没有查到相关文档,估计要去看相关代码才能知道原因了。
我的猜测是:用户点击,是属于用户交互,浏览器认为在UI上需要立即反馈,于是每处理完一个handler,立即更新页面UI。(看看就行,别当真
普通:冒泡排序改良:鸡尾酒排序(就是先向上冒个泡,再向下冒个泡,如此重复)
文章 0 评论 0
接受
我实际测了下,直接
btn.click()
和 页面点击按钮输出不一样。可以看到,
btn.click()
时,两个 handler 显然合并在同一个 event loop 执行了;而在页面里点击按钮则不一样。这个是浏览器自身实现细节,我没有查到相关文档,估计要去看相关代码才能知道原因了。我的猜测是:用户点击,是属于用户交互,浏览器认为在UI上需要立即反馈,于是每处理完一个handler,立即更新页面UI。(看看就行,别当真
从 Promise 来看 JavaScript 中的 Event Loop、Tasks 和 Microtasks