JavaScript中的锁定变量
我正在制作一个Windows小工具,使用“ActiveXObject”从多个URL获取数据。我听说JavaScript是单线程的,但是ActiveXObject是并行运行的,它们修改了导致错误的JavaScript中的锁定变量,javascript,mutex,Javascript,Mutex,我正在制作一个Windows小工具,使用“ActiveXObject”从多个URL获取数据。我听说JavaScript是单线程的,但是ActiveXObject是并行运行的,它们修改了导致错误的news变量。有没有办法锁定一个变量,这样我就可以防止这种情况发生 顺便说一句,我尝试了xmlDocument.async=false,它可以工作,但会引入太多的延迟。我在寻找另一种选择 我的代码: for(var i = 0; i < noFeeds; i++){ var URL = Sy
news
变量。有没有办法锁定一个变量,这样我就可以防止这种情况发生
顺便说一句,我尝试了xmlDocument.async=false
,它可以工作,但会引入太多的延迟。我在寻找另一种选择
我的代码:
for(var i = 0; i < noFeeds; i++){
var URL = System.Gadget.Settings.readString("feedURL"+i);
var xmlDocument = new ActiveXObject('Microsoft.XMLDOM');
xmlDocument.onreadystatechange = function(){
if(xmlDocument.readyState == 4){
if( xmlDocument.getElementsByTagName("item").length != 0 )
RSSChannel(xmlDocument, news);
else
AtomChannel(xmlDocument, news);
}
};
xmlDocument.load(URL);
}
for(变量i=0;i
给他们一个克隆的对象吗?ActiveXObject并行运行
——你有支持这一说法的文档吗?(他们在不同的线程上运行onreadystatechange
事件)我找不到任何,但我没有查找太久。本页介绍ActiveXObject的async
: