我有一个多维数组,我想将其重新排列到键:值对。
这是我已经拥有的代码:
var userSavedScenario = [["Nigeria",1,"Solar"],["Ghana",20,"Wind"]]
var mongoForm = userSavedScenario.reduce(function(acc,scenario) {
var mongoDBForm = {
'country':scenario[0],
'capacity':scenario[1],
'fuel':scenario[2]
}
acc[scenario] = mongoDBForm
return acc
},{})
输出的是:
{Ghana,20,Wind={country=Ghana, fuel=Wind, capacity=20.0}, Nigeria,1,Solar={country=Nigeria, fuel=Solar, capacity=1.0}}
我如何才能获得结果:
{country=Ghana, fuel=Wind, capacity=20.0},{country=Nigeria,
fuel=Solar, capacity=1.0}
我建议您使用Array.map
代替Array.reduce
。
例如:
var userSavedScenario = [["Nigeria",1,"Solar"],["Ghana",20,"Wind"]];
var result = userSavedScenario.map(function(row){
return {
"country":row[0],
"capacity":row[1],
"fuel":row[2]
};
});
console.log(result);