JS如何提取数组中所有对象的同一属性值
你要的效果可以直接用数组的map方法实现,这是JS里提取数组对象指定属性的标准简便写法,完全符合你设想的批量提取逻辑:
const colors = cars.map(car => car.color) console.log(colors) // 输出 ["red", "green"]
map方法会遍历数组的每一项,把每一项传入你给定的回调函数执行,最终把所有回调的返回值组成新数组返回,刚好匹配批量提取属性的需求。
如果需要兼容不支持箭头函数的旧运行环境,可以改成普通函数写法:
var colors = cars.map(function(car) { return car.color })
如果你需要过滤掉数组中不包含color属性的对象,避免拿到undefined值,可以搭配filter方法使用:
const colors = cars .filter(car => car.hasOwnProperty('color')) .map(car => car.color)
内容的提问来源于stack exchange,提问作者youngmago
相关产品推荐
相关产品推荐

