Passer des variables par référence permet aux fonctions de modifier les variables d'origine dans le contexte appelant. Bien que JavaScript ne dispose pas de véritable passage par référence, il fournit des moyens d'obtenir des fonctionnalités similaires.
Pour modifier le contenu des objets, transmettez-les par valeur aux fonctions. JavaScript permet de modifier les propriétés des objets, comme le montre l'exemple ci-dessous :
function alterObject(obj) { obj.foo = "goodbye"; } var myObj = { foo: "hello world" }; alterObject(myObj); alert(myObj.foo); // "goodbye"
Parcourir les propriétés du tableau avec des index numériques pour modifier des cellules individuelles :
var arr = [1, 2, 3]; for (var i = 0; i < arr.length; i++) { arr[i] = arr[i] + 1; }
Notez que le véritable passage par référence (modification de variables simples dans le contexte appelant) n'est pas possible en JavaScript. L'exemple suivant illustre ce concept :
function swap(a, b) { var tmp = a; a = b; b = tmp; } var x = 1, y = 2; swap(x, y); alert("x is " + x + ", y is " + y); // "x is 1, y is 2"
Contrairement à C , JavaScript ne prend pas en charge le véritable passage par référence, où les fonctions pourraient modifier des variables simples dans le contexte d'appel. Au lieu de cela, JavaScript permet uniquement de transmettre des références à des objets modifiables, ce qui modifie leur contenu mais pas leurs références.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!