javascript - 从第一个数组中选择独特的项目
javascript - pick unique items from first array
假设我有两个对象数组
const array1 = [{
listName: 'My top 5 Sci-Fi Movies',
listCreator: 'Anon',
listItem: 'The Fifth Element'
},
{
listName: 'My top 5 Sci-Fi Movies',
listCreator: 'Anon',
listItem: 'Cube'
}]
和
const array2 = [{
listName: 'My top 5 Sci-Fi Movies',
listCreator: 'Anon',
listItem: 'The Fifth Element'
},
{
listName: 'My top 5 Sci-Fi Movies',
listCreator: 'Dude',
listItem: 'Cube'
}]
我希望能够比较这两个数组并创建一个仅包含 array1
唯一成员的新数组,在本例中为
const uniqueArray = [{
listName: 'My top 5 Sci-Fi Movies',
listCreator: 'Anon',
listItem: 'Cube'
}]
我正在使用 lodash 库(但如果不需要,则没有必要解决此问题),我想用尽可能少的代码行来完成此任务。
我在试管间管后找到了一个简单而优雅的解决方案。
如果我(使用 lodash)做
const arrNew = _.differenceWith(array1, array2, _.isEqual);
arrNew 是 array1 中独特项目的新数组。希望这可以帮助别人。
很想看看是否还有其他性能更高的解决方案。
你好亲爱的兄弟,你使用哈希集从列表中自动获取唯一数据
HashSet<Integer>set = new HashSet<Integer>(list1);
List<Integer>list2 = new ArrayList<Integer>(set);
然后再把这个Hashset传递给List
它的 JAVA 代码,但逻辑对于每种语言都是相同的
假设我有两个对象数组
const array1 = [{
listName: 'My top 5 Sci-Fi Movies',
listCreator: 'Anon',
listItem: 'The Fifth Element'
},
{
listName: 'My top 5 Sci-Fi Movies',
listCreator: 'Anon',
listItem: 'Cube'
}]
和
const array2 = [{
listName: 'My top 5 Sci-Fi Movies',
listCreator: 'Anon',
listItem: 'The Fifth Element'
},
{
listName: 'My top 5 Sci-Fi Movies',
listCreator: 'Dude',
listItem: 'Cube'
}]
我希望能够比较这两个数组并创建一个仅包含 array1
唯一成员的新数组,在本例中为
const uniqueArray = [{
listName: 'My top 5 Sci-Fi Movies',
listCreator: 'Anon',
listItem: 'Cube'
}]
我正在使用 lodash 库(但如果不需要,则没有必要解决此问题),我想用尽可能少的代码行来完成此任务。
我在试管间管后找到了一个简单而优雅的解决方案。
如果我(使用 lodash)做
const arrNew = _.differenceWith(array1, array2, _.isEqual);
arrNew 是 array1 中独特项目的新数组。希望这可以帮助别人。 很想看看是否还有其他性能更高的解决方案。
你好亲爱的兄弟,你使用哈希集从列表中自动获取唯一数据
HashSet<Integer>set = new HashSet<Integer>(list1);
List<Integer>list2 = new ArrayList<Integer>(set);
然后再把这个Hashset传递给List
它的 JAVA 代码,但逻辑对于每种语言都是相同的