gpt4 book ai didi

javascript - 变量自行改变

转载 作者:行者123 更新时间:2023-11-28 04:51:37 25 4
gpt4 key购买 nike

我在尝试用 js 编写贪吃蛇游戏时遇到了一个小问题。

我有这个功能:

function move() {

var aux = [];
aux = snake.position[snake.position.length - 1];
console.log(aux);

if (snake.direction == 'r') {
snake.position[snake.position.length - 1][1] += 1;
};

console.log(aux);
//updateSnake();
snake.position[snake.position.length - 2] = aux;
updatePosition(snake.position);
};

问题是 aux 正在改变自己,而我没有对其做任何事情,正如你所看到的。第一个 console.log 的值与第二个不同!我并不是在改变它的原型(prototype)。

你们能帮我吗?

最佳答案

if (snake.direction == 'r') {
snake.position[snake.position.length - 1][1] += 1;
}

上面的行改变了数组aux。第一个 console.log() 返回 [10,12],如上面注释中所述。之后,if 语句递增 snake.position[snake.position.length - 1][1],这是变量的值。第二次调用 console.log() 时,变量 aux 的计算结果为 [10,12+1],相当于 [10,13] ,这是预期的结果。

关于javascript - 变量自行改变,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42874469/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com