簡體   English   中英

我如何將JSON對象轉換為js 2d數組

[英]How would I convert a JSON object to a js 2d array

我有一個用Java hashmap創建的JSON對象,看起來像這樣。

{"1":895,"2":827,"3":1429,"4":14,"5":1,"6":2,"10":2}

我的問題可以以任何一種方式進行,有沒有辦法將該JSON對象轉換為關聯的js數組,例如

{ 
  d:[
    { 
    'Month' : 1,
    'Count' : 895
    }
    { 
    'Month' : 2,
    'Count' : 827
    }
    { 
    'Month' : 3,
    'Count' : 1429
    }
    { 
    'Month' : 4,
    'Count' : 14
    }
    { 
    'Month' : 5,
    'Count' : 1
    }
    { 
    'Month' : 6,
    'Count' : 2
    }
    { 
    'Month' : 10,
    'Count' : 2
    }
  ]
}

或者將其轉換為Java腳本2d數組,例如

newArray = [[1, 895][2,827][3,1429][4,14][5,1][6,2][10,2]];

我已經進行了研究和研究,並且不斷遇到很多很棒的事情,但在本例中沒有特別的事情。 任何幫助將是巨大的!

這樣的事情會起作用:

 newArray = [];
 for(key in myArray)
    newArray.push({"Month": key, "Count": myArray[key]});

例如,您可以這樣做:

 var obj = {"1":895,"2":827,"3":1429,"4":14,"5":1,"6":2,"10":2} var result = {d: Object.keys(obj).map(function(key) { return {Month: Number(key), Count: obj[key]} })}; alert(JSON.stringify(result, null, ' ')); 

或者,您可以使用for in循環使用更傳統的循環方式:

 var obj = {"1":895,"2":827,"3":1429,"4":14,"5":1,"6":2,"10":2} var result = {d: []}; for (var key in obj) { result.d.push({Month: Number(key), Count: obj[key]}); } alert(JSON.stringify(result, null, ' ')); 

有關方法的更多信息:

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM