Why is my input parameter inArr
being modified when I update local variable arr
in the JavaScript code below?
function test(inArr) {
var arr = inArr;
for (let i = 0; i < 3; i++) {
arr.push(i);
console.log( "arr = ", arr, "inArr = ", inArr );
}
}
test([]);
This outputs:
arr = [ 0 ] inArr = [ 0 ]
arr = [ 0, 1 ] inArr = [ 0, 1 ]
arr = [ 0, 1, 2 ] inArr = [ 0, 1, 2 ]