国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > JS > 正文

JavaScript實現構造json數組的方法分析

2024-05-06 16:45:46
字體:
來源:轉載
供稿:網友

本文實例講述了JavaScript實現構造json數組的方法。分享給大家供大家參考,具體如下:

從后端拿到的數據是一個數組,每個元素中包含的數據如下(host相同的記錄都是相鄰的)

currentTime:"1470729601"
host:"10.3.34.21"
taskList:null
taskNum:1

想構造類似如下結構的json數組

[{  name: 'host:10.1.6.49',  data: [    [1470641461000, 5],    [1470642581000, 4],    [1470643701000, 2],    [1470647341000, 3]  ]}, {  name: 'host:10.3.34.18',  data: [    [1470641461000, 2],    [1470642581000, 2],    [1470643701000, 1],    [1470647341000, 4]  ]}, {  name: 'host:10.2.2.22',  data: [    [1470641461000, 3],    [1470642581000, 2],    [1470643701000, 6],    [1470647341000, 4]  ]},{  name: 'host:10.1.110.96',  data: [    [1470641461000, 1],    [1470642581000, 8],    [1470643701000, 1],    [1470647341000, 1]  ]},{  name: 'host:10.2.2.87',  data: [    [1470641461000, 7],    [1470642581000, 3],    [1470643701000, 6],    [1470647341000, 5]  ]}]

錯誤的方式:

var backendData = data.result;var resultList = new Array();var curHost = "";var oneHostDataList = new Array();for (var i in backendData) {  var host = backendData[i].host;  if (host != curHost) {    if(i != 0) {      var item = new Object();      item.name = curHost;      item.data = oneHostDataList;      resultList.push(item);    }    oneHostDataList = new Array();    curHost = host;  }  else {    var dot = new Array();    dot.push(backendData[i].currentTime * 1000);    dot.push(backendData[i].taskNum);    oneHostDataList.push(dot);  }}var item = new Object();item.name = curHost;item.data = oneHostDataList;resultList.push(item);$scope.data = JSON.stringify(resultList);

以上方式的問題在于轉換后會使得name和host和帶上引號,正確的方式如下:

var backendData = data.result;var resultList = [];var curHost = "";var oneHostDataList = new Array();for (var i in backendData) {  var host = backendData[i].host;  if (host != curHost) {    if(i != 0) {      var item = {        name: curHost,        data: oneHostDataList      };      resultList.push(item);    }    oneHostDataList = new Array();    curHost = host;  }  else {    var dot = new Array();    dot.push(backendData[i].currentTime * 1000);    dot.push(backendData[i].taskNum);    oneHostDataList.push(dot);  }}var item = new Object();item.name = curHost;item.data = oneHostDataList;resultList.push(item);$scope.data = resultList;

希望本文所述對大家JavaScript程序設計有所幫助。


注:相關教程知識閱讀請移步到JavaScript/Ajax教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 临清市| 林周县| 溆浦县| 包头市| 镶黄旗| 玉环县| 榆中县| 元谋县| 金华市| 历史| 绥宁县| 繁峙县| 阿勒泰市| 胶南市| 龙州县| 哈巴河县| 平湖市| 沛县| 通州区| 南木林县| 屏边| 宜兰县| 渭南市| 阿克| 武清区| 桂东县| 绿春县| 海林市| 平塘县| 岢岚县| 呼玛县| 鄂托克旗| 马关县| 琼结县| 乐陵市| 明光市| 隆德县| 双流县| 西城区| 上饶市| 龙陵县|