我想创建一个这样的Javascript对象:
var CarList = {};
然后用for循环填充它(数据来自MySql数据库),就像这样。
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;
}
事情是只显示数据库的最后一辆车。我在某个地方错过了[i]。它只创建一个汽车子,而不是我的数据库。
我该如何解决它。
我已经尝试过CarList [i],Carlist。[i]。*和Carlist.car [i]。*
答案 0 :(得分:3)
如果您希望CarList是一个数组,请使用方括号而不是大括号初始化它。您还需要在该数组中的每个位置创建一个新对象。
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;
}
答案 1 :(得分:0)
我认为你会想要一系列汽车对象。您可以使用以下地图执行此操作:
let carList = result.map(car => {
return {
Constructeur,
Modele,
Couleur,
Immat,
VIN,
DMC: car.Date_Mise_en_circulation,
Enregistrement: car.Date_enregistrement
}
})
或遵循您当前的编码模式并使用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;
})
}