【问题标题】:How to use reduce() to convert multidimensional array to key value pairs?如何使用 reduce() 将多维数组转换为键值对?
【发布时间】:2019-08-04 16:38:19
【问题描述】:

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

这是我已有的代码:

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}

【问题讨论】:

    标签: arrays multidimensional-array google-apps-script reduce


    【解决方案1】:

    我建议你使用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);

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-04-08
      • 1970-01-01
      • 2017-12-24
      • 2021-12-27
      • 2020-08-24
      • 2018-12-26
      • 1970-01-01
      相关资源
      最近更新 更多