Javascript将2D数组转换为对

时间:2016-01-26 20:16:42

标签: javascript json highcharts

我正在尝试实施Highcharts明细饼图,我正在处理图表对象中的向下钻取数组。

在我的AJAX JSON中,我有一个数组数组,我需要转换为一组数组,以便Highcharts选择它。

我有什么:

data: Array[1]
  Array[2]
   "California"
   21.56
id: "US"
name: "US",
data: Array[1]
 Array[2]
   "New York"
   41.3
id: "US"
name: "US"

我需要它看起来像:

name: 'US',
id: 'US',
data: [
    ['California', 21.56],
    ['New York', 41.3],
    ...
]

我正在使用的代码给了我这个:

$.each(data[1].data, function(key, val){
  drilldown.series.push({name: val['name'], id: val['name'], data: [ val['data'] ] }) ;// this doesn't work
  drilldown.series.push({name: val['name'], id: val['name'], data: [ val['data'][0], val['data'][1] ] }) ;// this works
});

来自我的服务器的JSON看起来像这样:

"data":[
  {
    "name":"US",
    "id":"US",
    "data":[
      [
        "California", 21.56
      ],
      [
        "Florida", 7.98
      ],
      [
        "Texas", 7.39
      ]
    ]
  }
]

1 个答案:

答案 0 :(得分:1)

这是格式问题。变化:

drilldown.series.push({name: val['name'], id: val['name'], data: [ val['data'] ] })

到:

drilldown.series.push({name: val['name'], id: val['name'], data: val['data'] })