在函数内修改全局变量

时间:2017-05-19 12:43:29

标签: javascript

我可能会犯错,但我至少知道我不想要这种行为。

我在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 ]

为什么全球受到影响?

0 个答案:

没有答案