bonsoir a tous,
dans le cadre d'une formation en javascript je dois présenter un projet. Et dans le développement de celui ci je rencontre un problème bloquant que je n arrive pas a résoudre.
j'ai un tableau vide
un objet du type
Code : Sélectionner tout - Visualiser dans une fenêtre à part var infVal2 = []
ensuite je parcours un tableau d'objet avec toutes les lignes d'un select sql
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 var infDb = { "Name": "", "Qte": 0, "Marque": "", "Surv": 0, "Checked": false };
je boucle sur chaque élément du tableau et ensuite sur chaque cle pour remplir au fure et a mesure mon objet infDb
jusque la tout est correct ensuite avant de traiter le 2nd élément je push mon objet infDb dans le tableau infVal2
le pb est qu'a partir du 2nd push l'ajout affecte l'ensemble du tableau avec la derniere valeur de l'objet.
voici le codej'ai fait le test en console directement d'abord :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39 function loadData(data) { var infDb = { "Name": "", "Qte": 0, "Marque": "", "Surv": 0, "Checked": false }; return new Promise((resolve) => { var obj = data; // lors de la appel all, on boucle sur obj qi est le tableau d'objet complet de la base obj.forEach((element, index) => { console.log("index :" + index + "-- element:" + element.Name); for (cle in element) { console.log("cle :" + cle + "-- element:" + element[cle]); if (cle === "Name") { infDb.Name = element[cle]; } if (cle === "Qte") { infDb.Qte = element[cle]; } if (cle === "Marque") { infDb.Marque = element[cle]; } if (cle === "Surv") { infDb.Surv = element[cle]; } if (cle === "Checked") { infDb.Checked = element[cle]; } } console.log("valeur :" + infDb.Name); infVal2.push(infDb); }) return resolve(); }); }
1- sur un tableau simple en ajoutant une simple valeur depuis une boucle====> la ça marche
2- toujours depuis une boucle mais en ajoutant un objet ====> la ça ne marche plus
merci de votre aide
Partager