gpt4 book ai didi

javascript - 从函数和事件处理程序访问相同的变量

转载 作者:行者123 更新时间:2023-11-30 13:01:35 25 4
gpt4 key购买 nike

<分区>

假设我有一个可以通过两个函数修改的变量:一个通过 setTimeout 定期调用,另一个是事件处理程序:

var a = [];
function foo()
{
var x = a.pop();
// do something with x...
setTimeout(function(){ foo(); }, 1);
}
//...
someElement.addEventListener("keypress", function(e){ a.push("some value"); }, true);

这段代码安全吗?事件监听器和 foo 是在同一个线程中运行还是在不同线程中运行?如果它们在不同的线程中运行,javascript 运行时是否必须保证对 a 的访问是同步的?

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