highcharts中的json数据转换问题请教

lumengabc 2013-09-18 02:34:01

比如我从php获取了json数据如下:


data = {"Firefox":45,"IE":26.8,"Chrome":{"name":"chrome","y":28.2,"sliced":true},"Safari":8.5,"Opera":6.2,"Others":0.7}



但他series中的data数据如下:

series: [{
type: 'pie',
name: 'Browser share',
data: [
['Firefox', 45.0],
['IE', 26.8],
{
name: 'Chrome',
y: 12.8,
sliced: true,
selected: true
},
['Safari', 8.5],
['Opera', 6.2],
['Others', 0.7]
]
}]


我怎么将上面的data转换成下面的data
...全文
307 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
再来壹串 2013-09-18
  • 打赏
  • 举报
回复

var data = { "Firefox": 45, "IE": 26.8,
                "Chrome": { "name": "chrome", "y": 28.2, "sliced": true },
                "Safari": 8.5,
                "Opera": 6.2,
                "Others": 0.7
            };

var data2 = data.toJSONString();
var data3 = $.parseJSON('[' + data2 + ']');
lumengabc 2013-09-18
  • 打赏
  • 举报
回复
哦。只能手动遍历啊。 如果他这个可以直接接收json数据就好了。
fzfei2 2013-09-18
  • 打赏
  • 举报
回复

  var data = {"Firefox":45,"IE":26.8,"Chrome":{"name":"chrome","y":28.2,"sliced":true},"Safari":8.5,"Opera":6.2,"Others":0.7}
  var ds=[]
  for(var k in data){
  	ds.push( typeof(data[k])=='object'?data[k]:[k,data[k]])
  }
var newData={
	series: [{
                type: 'pie',
                name: 'Browser share',
                data:ds  
            }]
	}
  

87,991

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧