JavaScript功能障碍?

时间:2018-11-19 14:09:00

标签: javascript function

很明显,我的功能之一不像预期的那样。

我有这个小代码:

    var snakeHead = [5,0];
    var snakeBody = [[4,0], [3,0], [2,0], [1,0], [0,0]];

    function SnakeMovement(){
		console.log(snakeBody);
		
		for (var i=0; i<snakeBody.length; i++){
			if(i==0){
				snakeBody[i][0] = snakeHead[0];
				snakeBody[i][1] = snakeHead[1];
			} else {
				snakeBody[i][0] = snakeBody[i-1][0];
				snakeBody[i][1] = snakeBody[i-1][1];
			}
		}

		console.log(snakeBody);
	}
  SnakeMovement();
  

以某种方式,第一个console.log()返回数组,就像它已经被for循环更改一样,因此两个console.log()都给我相同的结果。

我想知道为什么会发生这种情况,当然还有解决方法。

谢谢。

0 个答案:

没有答案