gpt4 book ai didi

javascript - Javascript 事件处理程序会阻塞吗?

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:52:27 26 4
gpt4 key购买 nike

(具体来说,我正在使用 Backbone 模型事件)

有人可以帮助我了解 javascript 事件的工作原理吗?以下内容没有按我预期的方式工作,这让我感到困惑:

在 backbone 中,我对我的模型进行了更改,然后我立即运行了一些代码:

var myVar;
myModel.set('someAttr', true); // Change my model
myVar = executeSomeFunc(); // Now run some code

然后在我的代码库的其他地方监听事件并处理它(在我的例子中我用一个集合包装这个模型):

myCollection.on('change:someAttr', changeHandler);  // Listen for the event

我发现 myVar = executeSomeFunc()change:someAttr 事件上的所有事件处理程序完成触发后才执行。 (我已经通过将耗时的事件处理程序附加到事件上进行了检查)

这是预期的行为吗?

最佳答案

是的。 JavaScript 不是多线程的。当您触发事件时,所有事件处理程序都会立即执行。

关于javascript - Javascript 事件处理程序会阻塞吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9899615/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com