上面代码,如果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)
多几次循环.性能差点
13 回答12.8k 阅读
8 回答2.5k 阅读
2 回答5k 阅读✓ 已解决
7 回答1.9k 阅读
9 回答1.6k 阅读✓ 已解决
3 回答2.2k 阅读✓ 已解决
5 回答798 阅读
此处应当用filter