我正在尝试将.json中的每个“百分比”值保存到数组中:
该代码现在可以正常工作:
let percentage = []
for(var key in res['data']){
percentage.push(res['data'][key].percentage);
}
但是我觉得我可以改进它,只使用一行。我尝试像过去那样将值映射到变量:
let percentage = res['data'].map(res => res.percentage);
但是相反,我收到“TypeError:res.data.map不是函数”错误。如何改善我的代码以将其仅映射到这样的一行?:
最佳答案
data
是一个对象,而不是数组,因此您不能在其上调用map
。但是,您可以改用Object.values
:
const res = {
data: {
0: {
percentage: 8.1
},
1: {
percentage: 47
},
2: {
percentage: 87
}
}
};
const percentage = Object.values(res.data).map(({ percentage }) => percentage);
console.log(percentage);
关于javascript - 如何改善对象的迭代?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51039208/