echarts後臺與前臺json資料互動問題
阿新 • • 發佈:2019-02-04
我得到的json是把
List<Map<String, String>> 型資料轉成json陣列傳到前臺 格式為
[
{
name:
"旅遊",
value:
"3"
},
{
name:
"新浪旅遊",
value:
"6"
},
{
name:
"釋出",
value:
"189"
},
{
name:
"交通廣播",
value:
"698"
}
]
與echarts需要非同步填入的資料格式不匹配,在後臺做處理複雜
我這裡採用前臺處理的方式
如需得到
{
"name": [
"旅遊",
"新浪旅遊",
"釋出",
"交通廣播"
],
"value": [
"3",
"6",
"189",
"698"
]
}
格式則可以
$.get('test.do', {}, function(data) {
var result = {};//結果json物件
var listName=[];//name陣列
var listValue=[];//value陣列
$.each(data, function(index, item) {
if (item.name != null) {
listName.push(item.name);//迴圈新增name
listValue.push(item.value);//迴圈新增value
}
});
result['name']=listName;
result['value']=listValue;
});
附註:
在前臺json就是相當於後臺的陣列和物件
var json=[··,··,··];
這種可以直接 json[n] (n為index) 陣列類似
var json={·········};
json.KEY 與物件類似
當兩種陣列和物件混合時可以兩種交錯使用,必要時可以加上$.each()函式進行遍歷