请问这种数组对象提取值的方法能再简化一步吗?
var get_selector_arr = this.data.storelist.filter((item)=>{
if(item.is_selector == true){
return item.rec_id;
}
})
console.log(get_selector_arr,'get_selector_arr11')
var get_rec_id_arr = get_selector_arr.map(item =>{
return item.rec_id
});
console.log(get_rec_id_arr,'get_rec_id_arr33')
我想判断storelist 这个数组 里的 is_selector == true 然后想返回item.rec_id的值,
但是这样返回是一条完整的对象的值,我还需要再map 下 进行处理,才能直接return item.rec_id
请问能不能一个遍历方法,就直接拿到我想要的 item.rec_id
回复
1个回答

test
2024-07-02
用reduce
,基本上数组的方法都可以靠reduce
写出来,所以多熟悉下这个API
var get_selector_arr = this.data.storelist.reduce((res, item)=> res.concat(item.is_selector ? item.rec_id : []), [])
回复

适合作为回答的
- 经过验证的有效解决办法
- 自己的经验指引,对解决问题有帮助
- 遵循 Markdown 语法排版,代码语义正确
不该作为回答的
- 询问内容细节或回复楼层
- 与题目无关的内容
- “赞”“顶”“同问”“看手册”“解决了没”等毫无意义的内容