我可能会犯错,但我至少知道我不想要这种行为。
我在JS中有一个while循环,在函数内部。全局变量被传递到函数中。
然而,当循环运行时,全局变量与函数内的变量一起被更改。
实施例
var arr = [0, 1, 2, 3, 4, 5];
var i = 0;
function test(myArr)
{
while(i < 2)
{
myArr.pop();
i++
}
console.log(arr);
console.log(myArr);
}
test(arr);
控制台吐出
[ 0, 1, 2, 3 ]
[ 0, 1, 2, 3 ]
为什么全球受到影响?