首先,我在点击时运行了这些功能:
$('#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 的信息传递给其他函数。