Разбираюсь с основами JS. Пытаюсь понять, почему при передаче массива в функцию мы можем спокойно изменить элемент, обратившись к нему по индексу, но не можем заменить массив другим массивом. Например:
function changeElement(array){
array[0] = 999;
}
function ChangeFullArray(array){
array = [];
}
var array = [1,2,3];
console.log('At the begining..', array);
changeElement(array);
console.log('After changeElement..', array);
ChangeFullArray(array);
console.log('After ChangeFullArray..', array);
Получаем следующий вывод:
At the begining.. [1, 2, 3]
After changeElement.. [999, 2, 3]
After ChangeFullArray.. [999, 2, 3]
Сам никак не смог понять почему так происходит. Объясните, пожалуйста.