如何使用redy()将多维阵列转换为钥匙值对



我有一个多维数组,我想将其重新排列到键:值对。

这是我已经拥有的代码:

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);

最新更新