【发布时间】:2019-03-15 00:53:26
【问题描述】:
我有以下从一些 api 获得的数据结构:
response = [{grade: 'A', frequency: 54, percentage: 24},
{grade: 'B', frequency: 50, percentage: 10},
{grade: 'C', frequency: 0, percentage: 0},
{grade: 'D', frequency: 50, percentage: 20},
...
];
现在一些 UI javascript 库要求将这些数据格式化并呈现如下:
label: ['A', 'B', 'C', 'D'];
data: [[54,50,0,50],[24,10,0,20]];
series: ['frequency', 'percentage'];
将 response 对象转换为上述元素的最有效方法是什么?
let label = response.map(data => data.grade);
let freqencyData = response.map(data => data.freqency);
let percentageData = response.map(data => data.percentage);
let data = [freqencyData, percentageData];
这样的事情是否足够有效?请不要认为这是一个示例,在我的案例中响应数据太大,并且将地图完成 3 次似乎是矫枉过正。 谢谢
【问题讨论】:
标签: javascript arrays dictionary stream