当我遇到问题时,我试图制作一个小的JavaScript游戏:
我无法在数组中设置先前段的值。
为了更清楚,这是一个例子:
for (var a = 0; a <= 100; a++) {
if (grid[a].num == 2) {
grid[a + 1].num++;
grid[a - 1].num++;
grid[a].num = 0;
}
}
属性&#39; num&#39; grid[a+1]
中的grid[a-1]
增加得很好,但属性&#39; num&#39; {{1}}。
为什么会发生这种情况?如何解决这个问题?
答案 0 :(得分:1)
该值不会更新,因为当{0时grid[a-1]
返回-ve值,请按如下所示更改代码。
for (var a = 0; a <= 100; a++) {
if (grid[a].num == 2) {
grid[a + 1].num++;
if (a > 0) {
grid[a - 1].num++;
}
grid[a].num = 0;
}
}