angular - 如何使用 Angular 6 过滤两种不同类型的数组(删除重复数据)?
问题描述
array1 = ["one","two"];
array2 = [ {"name":"one","id":101} , {"name":"two","id":102} , {"name":"three","id":103} , {"name":"four","id":104} ];
在上面的数据中,array1
是字符串值array2
的集合,是对象的集合。现在如何array1
删除array2
. 我使用 for 循环编写了代码,但它太长了,所以任何预定义的方法都存在于 angular-6/typescript 中。
输出:
array2 = [ {"name":"three","id":103} , {"name":"four","id":104} ];
解决方案
您可以利用
filter
和includes
。
let finalArray = array2.filter(item=>!array1.includes(item.name))
推荐阅读
- ms-access - 将 MS Access 表中的值分配给变量
- vue.js - 推送路由(从 vueJS 移动到 nuxtJS)
- azure - 只有 RDP 从本地局域网工作到站点 2 站点 IPSEC 的天蓝色
- ruby-on-rails - Rspec 和 FactoryGirl 有几个模型
- azure - Azure WAF 403 响应
- css - 为 ID 创建别名
- firewall - 连接到后面的服务器
- c# - 当字符串包含空值(“NaN”)时,JsonConvert.DeserializeObject 失败
- javascript - vuex 中 { dispatch, commit } 的类型是什么?
- oracle-apex - Apex 应用程序文本项字段的电子邮件验证