在我们的项目中,我们从数据库中获取以下格式的数据。

[
    [
        "ClearDB",
        "[email protected]",
        "com.test.cleardb"
    ],
    [
        "Cricbuzz",
        "[email protected]",
        "com.test.cricbuzz"
    ],
    [
        "Hangout",
        "[email protected]",
        "com.test.hangout"
    ]
]


我想要以下所述的键值格式

[
    {
        "projname": "ClearDB",
        "projmanager": "[email protected]",
        "package": "com.test.cleardb"
    },
    {
        "projname": "Cricbuzz",
        "projmanager": "[email protected]",
        "package": "com.test.cricbuzz"
    },
    {
        "projname": "Hangout",
        "projmanager": "[email protected]",
        "package": "com.test.hangout"
    }
]


请为我提供实现此目标的正确方法。

最佳答案

您可以简单地为每个数组创建一个新对象,并使用map函数创建一个对象数组,如下所示

var keys = ["projname", "projmanager", "package"];

console.log(data.map(function (arr) {
  var obj = {};
  keys.forEach(function (key, idx) { obj[key] = arr[idx]; });
  return obj;
}));


输出量

[ { projname: 'ClearDB',
    projmanager: '[email protected]',
    package: 'com.test.cleardb' },
  { projname: 'Cricbuzz',
    projmanager: '[email protected]',
    package: 'com.test.cricbuzz' },
  { projname: 'Hangout',
    projmanager: '[email protected]',
    package: 'com.test.hangout' } ]

关于javascript - JavaScript对应,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33916252/

10-13 05:03