Javascript 值未添加到数组中?

Javascript 值未添加到数组中?,javascript,html,Javascript,Html,这个简单的问题对我来说似乎不可能,因为我只是盯着代码看 基本上我有这个函数,我多次调用它,它应该把所有创建的div放在一个名为world的数组中,我在函数外声明了这个数组 但是,如果我尝试使用其中一个值,它们是“未定义的” 让我们假设我做了如下事情: newTile(2,6,128,90,0,0,2*128,0,6*128, "rgba(255,125,0,0.5)"); 这会按预期工作,并且肯定会创建一个div,将其“放在”另一个id为“world”的div中,并应将该div添加到位于[2]

这个简单的问题对我来说似乎不可能,因为我只是盯着代码看

基本上我有这个函数,我多次调用它,它应该把所有创建的div放在一个名为world的数组中,我在函数外声明了这个数组

但是,如果我尝试使用其中一个值,它们是“未定义的”

让我们假设我做了如下事情:

newTile(2,6,128,90,0,0,2*128,0,6*128, "rgba(255,125,0,0.5)");
这会按预期工作,并且肯定会创建一个div,将其“放在”另一个id为“world”的div中,并应将该div添加到位于[2][6]的数组“world”中。如果我现在尝试对div执行某些操作,例如更改颜色:

world[2][6].style.backgroundColor = "rgba(255,0,0,0.5)";

它返回为未定义,我假设实际添加到“world”数组不起作用,请帮助。

world[x]=[]newfile
时,code>将分配一个空数组
world[x]
,从而从
world[x]
中“删除”所有现有分幅。仅当它不存在时才进行初始化:

world[x] = world[x] || [];

如果向阵列添加多个分片,则会出现问题,因为
world[x]=[]newfile
时,code>将分配一个空数组
world[x]
,从而从
world[x]
中“删除”所有现有分幅。也许这就是问题所在?如果您只调用了一次
newfile
,那么
world[2][6]。样式…
应该可以按预期工作。真不敢相信我没有注意到,非常感谢!(这解决了我的问题)
world[x] = world[x] || [];