我希望能够在不改变原始数组的情况下,与传递给函数的数组一起工作。以下是问题的简单示例。
function whyDoesArrChange(arr) {
var newArr = arr;
newArr.push(4);
return arr;
}
console.log(whyDoesArrChange([1,2,3]));
// OUT: [1,2,3,4]
我只希望更改newArr
,但是参数中的arr
也会返回推送的值(返回[1,2,3,4]
)。我该如何避免这种情况?