将php JSON Object转换为数组

时间:2014-12-24 08:42:55

标签: javascript php

您好我想帮助将json数组转换为普通数组,以便我可以用它来制作chartJs中的图表。

这是我需要转换的数据

[
  {
    car: "6.8889",
    eng: "4.6111",
    expec: "2.8889",
    expli: "4.3333",
    gsw: "7.0000",
    imp: "4.0000",
    iss: "9.6667",
    know: "9.3333",
    own: "11.8333",
    ques: "9.3333",
    too: "7.2222",
    wwod: "4.4444",
   __proto__: {},
  }
]

我希望将其转换为:

[Log] ["4.0000", "9.6667", "4.6111", "9.3333", "11.8333", "9.3333", "2.8889", "4.4444", "4.3333", "7.2222", "7.0000", "6.8889"] (app.min.js, line 4)

我可以这样手动完成:

for (_j = 0, _len1 = json3.length; _j < _len1; _j++) {
    l = json3[_j];
    chartData2.push(l.imp, l.iss, l.eng, l.ques, l.own, l.know, l.expec, l.wwod, l.expli, l.too,l.gsw, l.car);
 }

但是我的数据可以有超过60种不同的值? 所以我想自动

我尝试过以下示例:

Need to convert json key-value pairs to standard array Converting JSON Object into Javascript array

任何人都可以给予的任何东西都很棒

提前致谢

1 个答案:

答案 0 :(得分:0)

您可以轻松地执行此操作,使用每个对象循环。试试这个: -

var arr = [{
  car: "6.8889",
  eng: "4.6111",
  expec: "2.8889",
  expli: "4.3333",
  gsw: "7.0000",
  imp: "4.0000",
  iss: "9.6667",
  know: "9.3333",
  own: "11.8333",
  ques: "9.3333",
  too: "7.2222",
  wwod: "4.4444",
  __proto__: {}
 }
],
newArr = [];
for (var i = 0; i < arr.length; i++) {
  for (var key in arr[i]) {
    newArr.push(arr[i][key]);
   }
}
console.log(newArr)