【问题标题】:Combine two arrays in Javascript to create a JSON [duplicate]在 Javascript 中组合两个数组以创建 JSON [重复]
【发布时间】:2017-09-13 05:30:14
【问题描述】:

我有两个数组:

headers=['medium','source', 'name']

rows=[
['direct', 'google', 'demoAccount'],
['direct', 'google', 'demoAccount'],
['direct', 'google', 'demoAccount']
]

我怎样才能将它们结合起来并创建一个带有数据的 JSON 来保存以下内容:

   {
 {medium:direct, 
    source:google,
    name:demoAccount},
    {medium:direct, 
    source:google,
    name:demoAccount},{medium:direct, 
    source:google,
    name:demoAccount}
}

【问题讨论】:

标签: javascript arrays json


【解决方案1】:

您可以使用array#maparray#reduce

const headers=['medium','source', 'name'];

const rows=[['direct', 'google', 'demoAccount'],['direct', 'google', 'demoAccount'],['direct', 'google', 'demoAccount']];

var result = rows.map((arr) => {
  return arr.reduce((o, n, i) => {
    o[headers[i]] = n;
    return o;
  }, Object.create(null));
});

console.log(result);

【讨论】:

  • 如何删除结果中每个 json 之间的逗号
  • 你说的是哪个逗号?
  • {{},{},{}} 之间的那些
  • 你想要一个对象吗?结果是提供了一个数组,数组中的元素用逗号分隔。
  • 是的,我想要一个对象。对不起,我一定是误会了,我会更新问题
猜你喜欢
  • 1970-01-01
  • 2016-06-18
  • 2012-08-14
  • 2020-05-09
  • 2019-11-10
  • 2017-11-14
  • 1970-01-01
  • 2020-12-06
  • 2018-07-04
相关资源
最近更新 更多