【发布时间】:2019-02-07 12:01:49
【问题描述】:
这是我的代码
var inputData = [{
name: 'Nick',
achievements: 158,
points: 14730
}, {
name: 'Jordan',
achievements: '175',
points: '16375'
}, {
name: 'Ramon',
achievements: '55',
points: '2025'
}];
var outputData = inputData.map(function(obj) {
return Object.keys(obj).sort().map(function(key) {
return obj[key];
});
});
console.log(JSON.stringify(outputData));
这给出了结果
[["Nick",158,14730],
["Jordan","175","16375"],
["Ramon","55","2025"]]
期望的输出
[["name", "achievements", "points"],
["Nick", "158", "14730"],
["Jordan", "175", "16375"],
["Ramon", "55", "2025"]]
基本上我需要这种格式的数据来生成 CSV。所以我将我的对象数组转换为数组数组。数组数组的第一行将包含键,而下一行将包含值。
我不想使用 Lodash 或 Jquery。我正在寻找 Plain Vanilla JS 的解决方案
【问题讨论】:
-
您已经在使用
Object.keys()- 为什么这不起作用? -
使用
Object.keys(obj)作为键,使用Object.value(obj)作为值。
标签: javascript