Parametri Oggetto JavaScript
Gli oggetti, a differenza dei primitivi, vengono passati per riferimento. Ciò significa che la modifica di un oggetto all'interno di una funzione porterà al fatto che cambierà anche al di fuori della funzione. Guarda l'esempio:
function func(arr) {
arr[0] = '!';
}
let arr = [1, 2, 3];
func(arr);
console.log(arr); // visualizzerà ['!', 2, 3]
Determina, senza eseguire il codice, cosa verrà visualizzato in console:
function func(obj) {
obj.a = '!';
}
let obj = {a: 1, b: 2, c: 3};
func(obj);
console.log(obj);
Determina, senza eseguire il codice, cosa verrà visualizzato in console:
function func(arg) {
arg = '!';
}
let obj = {a: 1, b: 2, c: 3};
func(obj.a);
console.log(obj);
Determina, senza eseguire il codice, cosa verrà visualizzato in console:
function func(obj) {
obj = '!';
}
let obj = {a: 1, b: 2, c: 3};
func(obj.a);
console.log(obj);
Determina, senza eseguire il codice, cosa verrà visualizzato in console:
function func(arr) {
arr.splice(1, 1);
}
let arr = [1, 2, 3];
func(arr);
console.log(arr);
Determina, senza eseguire il codice, cosa verrà visualizzato in console:
function func(arr) {
arr.slice(1, 1);
}
let arr = [1, 2, 3];
func(arr);
console.log(arr);
Determina, senza eseguire il codice, cosa verrà visualizzato in console:
function func(arr) {
let newArr = arr;
newArr[0] = '!';
}
let arr = [1, 2, 3];
func(arr);
console.log(arr);