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
1
2
3
4
5
6
7
var infDb = {
        "Name": "",
        "Qte": 0,
        "Marque": "",
        "Surv": 0,
        "Checked": false
    };
ensuite je parcours un tableau d'objet avec toutes les lignes d'un select sql
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 code
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();
    });
 
}
j'ai fait le test en console directement d'abord :
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