我正在使用來自后端的資料的谷歌圖表。
我必須轉換從服務器檢索的 JSON 資料。
以下功能作業正常并提供我想要的,
但我問是否有更高效的方式(沒有回圈?)將資料從 Json 轉換為陣列。
輸入 Json 資料
[{“W”:1,“rec”:0,“tr”:0,“Open”:24},{“W”:2,“rec”:43,“tr”:40,“Open”: 27 },{“W”:3,“rec”:26,“tr”:34,“打開”:19 },{“W”:4,“rec”:53,“tr”:50,“打開“:22 },{“W”:5,“rec”:53,“tr”:56,“打開”:19 },{“W”:6,“rec”:40,“tr”:34, “打開”:25 },{“W”:7,“rec”:37,“tr”:38,“打開”:24 },{“W”:8,“rec”:45,“tr”: 44,“打開”:25}]
輸出陣列資料
[["W","re??c","tr","Open"], [1,0,0,24], [2,43,40,27], [3,26,34,19], [ 4,53,50,22], [5,53,56,19], [6,40,34,25], [7,37,38,24], [8,40,42,22]]
function JsontoTable(obj) {
var myarray = [];
var keys = [];
for (var k in obj[0]) keys.push(k);
myarray.push(keys);
for (let i = 0; i < obj.length; i ) {
var arr = [];
for (var k in obj[i]) { arr.push(obj[i][k]); }
myarray.push(arr);
}
return (myarray);}
uj5u.com熱心網友回復:
let inputArray = [{ "W": 1, "rec": 0, "tr": 0, "Open": 24 }, { "W": 2, "rec": 43, "tr": 40, "Open": 27 }, { "W": 3, "rec": 26, "tr": 34, "Open": 19 }, { "W": 4, "rec": 53, "tr": 50, "Open": 22 }, { "W": 5, "rec": 53, "tr": 56, "Open": 19 }, { "W": 6, "rec": 40, "tr": 34, "Open": 25 }, { "W": 7, "rec": 37, "tr": 38, "Open": 24 }, { "W": 8, "rec": 45, "tr": 44, "Open": 25 }];
const outputArray = [Object.keys(inputArray[0])].concat(inputArray.map(Object.values));
console.log(outputArray);
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/427163.html
標籤:javascript 数组 json
上一篇:生成新的隨機值并存盤在陣列中
下一篇:如何使用默認值擴展給定陣列?
