这让我疯了几个星期。我有一个可变数据,我想在程序的不同部分访问。像这样,
var data = [];
SomeNamespace.module.method(function(){
data.push(['some data']);
});
// data is undefined here
但是,它似乎丢失了,可能与范围有关。我怎么能绕过这个?
提前致谢!
答案 0 :(得分:7)
该函数是一个回调,因此在运行回调之前不会填充数据。
所以这个:
var data = [];
(function(){
data.push(['some data']);
})();
data; // ['some data']
设置数据,但是:
var data = [];
var func = function() {
data.push('values');
}
data; // [] - empty array