Передача параметров по значению и по ссылке
Базовые типы данных (числа, строки, булевы переменные) передаются по значению. Это значит, что значение переменной, переданной как параметр в функцию, не изменится во время выполнения функции. Для всех остальных типов данных параметры передаются по ссылке и могут изменяться во время выполнения функции. Пример, иллюстрирующий такое поведение, приведен ниже:
function passByVal(arg1) {
var arg1 = 10;
}
var x = 5;
passByVal(5);
alert(x);
//выведет на экран число 5, так как параметр передавался по значению
function passByRef(arr1) {
arr1[0] = "NEW";
}
var y = ["first", "second"];
passByRef(y);
alert(y);
//выведет на экран «NEW, second», так как параметр передавался по ссылке, и значение первого элемента массива изменилось в основной части скрипта
Глобальные и локальные переменные
В языке 5-72632.php" class="back_link">⇐ Назад