在echarts的數據來源選型時,我在二維數組、對象數組兩種形式中出現優於,看上去對象數組語義化挺好,但二維數組可以直接在echarts的各種例子里直接用,為了兼顧兩個的長處,寫了對象數組與二維數組的轉換方法,代碼如下(最外層花括號用於方便直接才控制台輸出而不污染控制台環境):
{ // 原始key-value形式的objArr let objArr=[ {product: 'Matcha Latte', count: 823, score: 95.8}, {product: 'Milk Tea', count: 235, score: 81.4}, {product: 'Cheese Cocoa', count: 1042, score: 91.2}, {product: 'Walnut Brownie', count: 988, score: 76.9} ]; // 目標值為二維數組arrArr let arrArr=[]; let dimensions=Object.keys(objArr[0]); console.log(dimensions); objArr.forEach((value,index)=>{ arrArr[index]=[]; dimensions.forEach(val => { arrArr[index].push(value[val]||null) }); }); console.log(arrArr); }