0
我在下面一个名为maps2模块需要JS:RequireJS从另一个模块modyfing内部模块阵列
define([], function(){
var z = [];
function changeZ(){
z = [1,2,3];
console.log(z);
}
return {
z: z,
changeZ: changeZ
}
});
和主文件:
requirejs(['maps2'], function(maps2){
console.log(maps2.z);
maps2.changeZ();
console.log(maps2.z);
});
这里的问题是:我期待得到这样的:
[]
[1,2,3]
[1,2,3]
不过不是我得到的结果:
[]
[1,2,3]
[]
我有点困惑。为什么第三个console.log产生[]
而不是修改z
数组后调用changeZ
函数?
我很抱歉,但我不明白。我没有看到你的例子的类比 - 我没有创建新的变量(很可能是我做的某个地方,但我不知道在哪里),所有的时间我都在maps2模块上运行z变量。你能否提供一些更详细的答案? – Furman