Не срабатывает передача по ссылке
Насколько я знаю массив - это обьект, а обьекты передаются в ф-ю по ссылке.
Есть две функции, в обе передается массив. Первая меняет один элемент в массиве, все ок. Вторая меняет содержимое массива, но ничего не происходит. Подскажите почему так происходит [1, 5, 8, 15] [2, 5, 8, 15] [2, 5, 8, 15]
function func1(abc) {
abc[0] = 2;
}
function func2(abc) {
abc = [1, 2, 3];
}
var arr = [1, 5, 8, 15];
console.log(arr);
func1(arr);
console.log(arr);
func2(arr);
console.log(arr);
|
Цитата:
Цитата:
Ранее твоя переменная хранила ссылку на один массив, а потом стала хранить ссылку на другой массив. Старый массив при этом меняться не обязан. ;) |
Цитата:
Arrays are Objects Arrays are a special type of objects. The typeof operator in JavaScript returns "object" for arrays. http://www.w3schools.com/js/js_arrays.asp Цитата:
спасибо! :victory: |
| Часовой пояс GMT +3, время: 01:11. |