Passage d'objets par référence en JavaScript
Les tableaux et les objets diffèrent quelque peu des autres types de données primitifs. La différence est qu'une variable stockant un tableau ne le contient en fait pas, mais se contente de référencer celui-ci.
En pratique, cela signifie que lorsqu'on enregistre un objet dans une autre variable, les deux variables feront référence au même objet. Essayons cela en pratique. Supposons que nous ayons l'objet suivant :
let obj1 = {a: 1, b: 2, c: 3};
Assignons-le d'une variable à une autre :
let obj2 = obj1;
Modifions l'une des variables :
obj2.a = '!';
En conséquence, les modifications seront visibles dans l'autre variable également :
console.log(obj1); // {a: '!', b: 2, c: 3}
Sans exécuter le code, déterminez ce qui sera affiché dans la console :
let arr1 = [1, 2, 3];
let arr2 = arr1;
arr1[0] = 'a';
console.log(arr2);
Sans exécuter le code, déterminez ce qui sera affiché dans la console :
let arr1 = [1, 2, 3];
let arr2 = arr1;
arr1[0] = 'a';
arr2[1] = 'b';
console.log(arr1);
Sans exécuter le code, déterminez ce qui sera affiché dans la console :
let arr1 = [1, 2, 3];
let arr2 = arr1;
arr1[0] = 'a';
arr2[0] = 'b';
console.log(arr2);