我有以下数组对象
var stats = [
[0, 200,400], [100, 300,900],[220, 400,1000],[300, 500,1500],[400, 800,1700],[600, 1200,1800],[800, 1600,3000]
];
我想知道如何将其转换为以下JavaScript对象。
var stats = [
{x:0, y:200,k:400}, {x:100, y:300,k:900},{x:220, y:400,k:1000},{x:300, y:500,k:1500},{x:400, y:800,k:1700},{x:600, y:1200,k:1800},{x:800, y:1600,k:3000}
];
答案 0 :(得分:9)
Array.prototype.map
就是您所需要的:
stats = stats.map(function(x) {
return { x: x[0], y: x[1], k: x[2] };
});
您所描述的所需输出不是JSON,而是常规JavaScript对象;如果它是JSON,键名将在引号中。当然,您可以使用JSON.stringify
将JavaScript对象转换为JSON。
答案 1 :(得分:4)
您可以使用map()
var stats = [
[0, 200,400], [100, 300,900],[220, 400,1000],[300, 500,1500],[400, 800,1700],[600, 1200,1800],[800, 1600,3000]
];
stats = stats.map(function(el) {
return {
x: el[0],
y: el[1],
k: el[2]
};
});
console.log(stats);