JavaScript如何从对象数组中提取指定key的对应值组成新数组
从对象数组中提取指定键的对应值
这类需求直接用JavaScript原生的Array.prototype.map方法实现即可,逻辑就是遍历数组的每一个元素,取出目标键对应的值,最终返回由这些值组成的新数组。
针对你给出的示例,代码实现如下:
const source = [{'aaa': '11','text':'hello'},{'aaa': '12','text':'bye'}] // 提取所有元素key为aaa的值,得到字符串结果 ['11', '12'] const strResult = source.map(item => item.aaa)
如果你需要的是数字类型的[11, 12],取值时做一次类型转换就可以:
const numResult = source.map(item => Number(item.aaa))
如果数组里可能存在没有aaa键的元素,直接取值会返回undefined,可以追加filter方法过滤掉无效值:
const validResult = source .map(item => item.aaa) .filter(val => val !== undefined)
内容的提问来源于stack exchange,提问作者user18241178
相关产品推荐
相关产品推荐

