-1

对象数组如下所示:

[
    {"Number":64,"Earning":160000},{"Number":64,"Earning":160000},
    {"Number":64,"Earning":160000},{"Number":64,"Earning":160000},
    {"Number":64,"Earning":160000},{"Number":64,"Earning":160000},
    {"Number":64,"Earning":160000},{"Number":64,"Earning":160000}
]

所需的 JavaScript 数组是:

[
    [160000, 64], [160000, 64], [160000, 64], [160000, 64],
    [160000, 64], [160000, 64], [160000, 64], [160000, 64]
]

我想将 JSON 对象数据转换为 JavaScipt,上面给出了我提供的 JSON 数据,还定义了我想要的 JavaScript 数组。我想要一个解决这个问题的 JavaScript 方法

4

3 回答 3

2

如果你使用这个精确的结构,你可以做这样的事情。第一个 JSON 结构在哪里inputDataoutputData将是输出的数据。

var outputData = [];

for(var i = 0; i < inputData.length; i++) {
    var input = inputData[i];

    outputData.push([input.Earning, input.Number]);
}
于 2013-08-03T09:13:51.497 回答
0

遍历数组并构造一个新数组。大多数 javascript 库都有一个map功能,您只需要提供一个映射功能即可实现此目的。

于 2013-08-03T09:12:15.943 回答
0

这种方式(仅适用于现代浏览器):

var a = [
    {"Number":64,"Earning":160000},{"Number":64,"Earning":160000},
    {"Number":64,"Earning":160000},{"Number":64,"Earning":160000},
    {"Number":64,"Earning":160000},{"Number":64,"Earning":160000},
    {"Number":64,"Earning":160000},{"Number":64,"Earning":160000}
];

var b = a.map(function(i) {  return [i.Earning,i.Number];  });   // New Array
于 2013-08-03T09:35:01.593 回答