Jquery从JSON结果拆分2D数组

时间:2017-02-08 16:08:23

标签: jquery arrays json multidimensional-array

示例JSON_encode结果

[{"Apparatus":"test123"},{"Equipment":"41324121"},{"Chemical":"314"},{"Apparatus":"4312"},{"Equipment":"134"},{"Chemical":"324"}]

我很难将json_encode结果(从php页面)变成这样的东西:

var data = 
["Apparatus", "test123"],
["Apparatus", "4312"],
["Equipment", "41324121"],
["Equipment", "134"],
["Chemical", "314"],
["Chemical","324"]

编辑:稍后逐个调用。谢谢。

Edit2:它将用于pdfmake的表格端。 我的预期代码示例(有关详细信息:PDF Make

        body: [
      [ 'Type', 'Data' ],
      appdata_splits
    ]

1 个答案:

答案 0 :(得分:0)

要执行您需要的操作,您可以在原始数组上调用map(),然后返回所需值的数组。试试这个:



var data = [{"Apparatus":"test123"},{"Equipment":"41324121"},{"Chemical":"314"},{"Apparatus":"4312"},{"Equipment":"134"},{"Chemical":"324"}]

var arr = data.map(function(o) {
  var k = Object.keys(o)[0];
  return [k, o[k]];
});
console.log(arr);




在上面的代码中,o表示正在迭代的原始数组中的对象。由于对象的关键是动态的,我们必须使用Object.keys()方法来检索它们的数组。 [0]访问器检索其中的第一个,因为它可以保证在给定样本数据的情况下存在。然后o[k]通过我们刚刚检索到的密钥从对象中检索值。