2017-10-13 6 views
0

Je veux créer un objet Javascript comme ceci:Créer un objet javascript et remplissez les données qu'il

var CarList = {}; 

puis le remplir avec une boucle for (les données sont prises à partir d'une base de données MySql) comme celui-ci.

for(var i = 0; i < result.length; i++) 
{ 
    CarList.Constructeur = result[i].Constructeur; 
    CarList.Modele = result[i].Modele; 
    CarList.Couleur = result[i].Couleur; 
    CarList.Immat = result[i].Immat; 
    CarList.VIN = result[i].VIN; 
    CarList.DMC = result[i].Date_Mise_en_circulation; 
    CarList.Enregistrement = result[i].Date_enregistrement; 
} 

Le fait est que seule la dernière voiture de la base de données est affichée. il me manque un [i] quelque part. il ne fait que créer un enfant de voiture et pas autant que ma base de données.

Comment puis-je le fixer.

Je l'ai déjà essayé carliste [i], carliste. [I]. * Et Carlist.car [i]. *

+0

* Vous écrasez * la valeur de chaque attribution. –

Répondre

3

Si vous voulez carliste être un tableau, l'initialiser avec crochets, non bouclés supports. Vous devrez également créer un nouvel objet à chaque endroit de ce tableau.

var CarList = []; 

for(var i = 0; i < result.length; i++) 
{ 
    // Create a new object 
    CarList[i] = {}; 
    CarList[i].Constructeur = result[i].Constructeur; 
    CarList[i].Modele = result[i].Modele; 
    CarList[i].Couleur = result[i].Couleur; 
    CarList[i].Immat = result[i].Immat; 
    CarList[i].VIN = result[i].VIN; 
    CarList[i].DMC = result[i].Date_Mise_en_circulation; 
    CarList[i].Enregistrement = result[i].Date_enregistrement; 
} 
+0

Cette façon fonctionne bien. mais maintenant j'ai un tableau d'objet. Comment puis-je envoyer ce tableau dans un modèle EJS (désolé si c'est trop hors de la portée) –

+0

La page d'accueil de www.embeddedjs.com a un exemple en utilisant un tableau. Est-ce ce que vous cherchez? –

0

Je pense que vous voulez un tableau d'objets de voiture. Vous pouvez le faire avec une carte comme celle-ci:

let carList = result.map(car => { 
return { 
     Constructeur, 
     Modele, 
     Couleur, 
     Immat, 
     VIN, 
     DMC: car.Date_Mise_en_circulation, 
     Enregistrement: car.Date_enregistrement 
    } 
}) 

ou de suivre votre schéma de codage en cours et utiliser un arr.push()

let carList = []; 
for(var i = 0; i < result.length; i++) 
{ 
carList.push({ 
    Constructeur: result[i].Constructeur; 
    Modele: result[i].Modele; 
    Couleur: result[i].Couleur; 
    Immat: result[i].Immat; 
    VIN: result[i].VIN; 
    DMC: result[i].Date_Mise_en_circulation; 
    Enregistrement: result[i].Date_enregistrement; 
}) 
}