繁体   English   中英

如何将值与嵌套数组中的其他对象进行比较?

[英]How to compare value with other objects in nested array?

如何将嵌套数组的值与父对象中的对象进行比较,如果不匹配则删除该对象? 我需要遍历整个数组,以便在子级中只剩下与父级“模块”匹配的“模块”。

这是控制台的图像,用于查看我的数组结构。

for (var i = topicArray.length - 1; i >= 0; i--) {
if (topicArray[i].module !== module)
topicArray.splice(i, 1) }

一种选择是遍历每个项目,然后简单地filter()出不匹配的模块:

 const data = [ { module: 'A', topics: [ { topic: 'something', module: 'A' }, { topic: 'something else', module: 'B' } ] }, { module: 'B', topics: [ { topic: 'something', module: 'A' }, { topic: 'something else', module: 'B' } ] } ] data.forEach(item => { item.topics = item.topics.filter(topic => item.module === topic.module) }) console.log(data) 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM