J'essaie de stocker une valeur d'un paramètre à un tableau. Malheureusement, lorsque j'essaie de pousser une valeur, cela a également changé la valeur précédente. Donc, à la fin, ils ont tous la même valeur, mais cela ne devrait pas.
Par exemple: je pousse "1". Il stocke, mais lorsque je pousse "2", il a remplacé le "1" p>
Voici mon code: p>
5 Réponses :
Créez le tableau global, lorsqu'il est à l'intérieur de la fonction, chaque fois que la fonction est appelée une nouvelle matrice est créée. Lorsque le tableau est global, ce problème ne se pose pas
p>
var numArr = [];
function Add(num) {
var count = 10;
for (var i = 0; i < count; i++) {
numArr.push(num);
}
console.log(numArr);
}
Add(11)
Add(112)Si vous avez un tableau plus d'un tableau à mettre à jour, vous pouvez également utiliser la référence de tableau de paramètre. Par example; Fonction Ajouter (Myarr, Num) et Ajouter (SuperArray, 11) et ajouter (SuperArray, 112)
La raison pour laquelle la valeur précédente est remplacée est celle avec chaque appel de la fonction, vous déclarez votre tableau, sans valeurs, sans valeurs, var numarr = [] code>. Déplacez cette définition en dehors de cette fonction et il devrait s'agir simplement d'une amende p>
var numArr = [];
const Add = (num) => {
var count= num;
for (let i = 0; i < count; i++) {
numArr.push(num);
}
return numArr
}
console.log(Add(10))Vous pouvez utiliser la fonction de flèche, laissez comme ci-dessus.
Le problème est que vous instanciez la matrice dans chaque itération de la boucle. La solution simple consiste à transmettre le tableau dans la fonction p> ajouter () code>. var arr = new Array(10);
arr.fill(999);
console.log(arr);
Le problème est que vous créez une nouvelle matrice lorsque vous appuyez sur Nouvelle valeur.Vous pouvez créer une matrice globale et appuyez sur la valeur de la valeur.
p>
<script>
_glb_arr=[];
$(document).ready(function (){
Add(1);
Add(3);
console.log(_glb_arr);
});
function Add(val){
_glb_arr.push(val);
}
</script>
Quelle valeur antérieure?
Numarr code> est créé Intérieur B> LeAjoutez CODE> Fonction (ANEW, TEMPS TIME La fonction est appelée) et est la poubelle recueillie lorsque cette fonction est terminée.Est-ce un comportement normal que la valeur est ajoutée 10 fois?
Le journal d'image ne peut pas être celui du code ci-dessous, car le tableau doit avoir 10 éléments, ni 1, ni 2.