我有一个数组,其中包含服务器返回的对象,如下所示:
myArr = [{
"id": 1
}, {
"id": 2
}, {
"id": 3
}, {
"id": 4
}, {
"id": 5
}, {
"id": 6
}, {
"id": 7
}, {
"id": 8
}, {
"id": 9
}, {
"id": 10
}];
我需要它成为:
myArr = [
1, 2, 3, 4, 5, 6, 7, 8, 9, 10
];
当然,我可以循环遍历数组,例如:
// array to hold property values
let myNewArr = [];
// loop through the objects and take the value of id of each object
for (let i = 0; i < myArr.length; ++i) {
myNewArr.push(myArr[i].id);
}
有没有更有效的方法来做到这一点,最好使用 Lodash?我不想在代码中添加另一个循环,因为它已经充满了循环。
最佳答案
数组映射就是您正在寻找的:
myArr.map(function(x){ return x.id; })
它会自动循环你的数组并“提取”内部对象的 id 值,返回一个数组。
关于javascript - 以高效的方式从对象中取出数组内对象的属性值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47033728/