gpt4 book ai didi

javascript - 共享变量的问题

转载 作者:行者123 更新时间:2023-11-28 02:14:44 24 4
gpt4 key购买 nike

首先,我已经在点击时运行了这些函数:

$('#bodyHVAC a#zMaps').one('click', function(){
appendZoneMapStuff(globalPaths.mallName, function(){
//console.log('appendZoneMapStuff');
setTimeout(function(){
getPathToUnits(function(){
setTimeout(function(){
setupRoof('roofMrtu', function(){
//console.log('setupRoof');
});
}, 500);
});
}, 0);
});
});

我这样设置,以便函数可以依次运行,但它们似乎并不总是这样做。

我有这个全局变量:

var AMnamePathObj = {};

为了简单起见,我们假设 getPathToUnits() 的代码是:

function getPathToUnits(callback){
AMnamePathObj = {lookin: "good"};
console.log(AMnamePathObj);
if (callback)
callback();
}

setupRoof() 的代码是:

function setupRoof(){
console.log(AMnamePathObj);
if (callback)
callback();
}

但是当 setupRoof() 中的 console.log 运行时,我得到了 [object object],即使 AMnamePathObj 是一个全局变量!我什至不想使用 AMnamePathObj 作为全局变量,但我不知道如何将 AMnamePathObj 的信息传递给其他函数。

最佳答案

[object Object] 是 JavaScript 中对象的默认字符串表示形式。如果您期望 AMnamePathObj 的有用描述,您应该给它一个 toString 函数,例如:

var foo = {
name: "Steve",
toString: function() {
return this.name;
}
};
console.debug(""+foo);

比较:

console.debug(""+{});

因此,能够看到相关变量并没有什么问题。

关于javascript - 共享变量的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16549306/

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