上面代码,如果canSelectItemCategories中的check没有一个为true,我就会接收到一个[undefined]
题主的意图应该是过滤check的item,并且取出item的某个字段吧.用reduce
const newList = list.reduce((pre, item) => item.check ? [...pre, item.xxxid] : pre, [])
未选中的,直接返回上次循环结果,选中的,将当前元素的某个字段加入返回值;
或者方便理解的话.
const newList = list.filter(it => it.check).map(it => it.xxxid)
多几次循环.性能差点
10 回答11.1k 阅读
6 回答3k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.6k 阅读✓ 已解决
3 回答5.1k 阅读✓ 已解决
3 回答1.8k 阅读✓ 已解决
此处应当用filter