有没有办法在JavaScript中返回两个数组之间的差异?
例如:
var a1 = ['a', 'b'];
var a2 = ['a', 'b', 'c', 'd'];
// need ["c", "d"]
Run Code Online (Sandbox Code Playgroud)
任何建议都非常感谢.
让我们A和B两套.我正在寻找真正快速或优雅的方法来计算它们之间的集合差异(A - B或者A \B,取决于您的偏好).正如标题所说,这两个集合作为Javascript数组进行存储和操作.
笔记:
编辑:我注意到有关包含重复元素的集合的注释.当我说"集合"时,我指的是数学定义,这意味着(除其他外)它们不包含重复元素.
简单地说,我想从另一个数组中减去一个数组。
数组是对象的数组。我知道我可以循环遍历一个数组和每个项目,比较另一个数组中的值,但这似乎有点混乱。
感谢您的帮助,希望这个问题不是太基本,我试过用谷歌搜索它但没有运气:(
编辑:
我希望删除的数组中的对象将具有相同的值但不是相同的对象(感谢@patrick dw)。我希望从初始数组中完全删除子集。
如何从id = 2JavaScript/jQuery中的以下数组中删除整个子数组项?
arr = [{
"id": 1,
"name": "Steve"
},{
"id": 2,
"name": "Martin"
},{
"id": 3,
"name": "Short"
}]
Run Code Online (Sandbox Code Playgroud)
我不确定如何使用grep或splice在这种情况下.
我想要的输出是:
newArr = [{
"id": 1,
"name": "Steve"
},{
"id": 3,
"name": "Short"
}]
Run Code Online (Sandbox Code Playgroud)