📅  最后修改于: 2023-12-03 15:32:44.981000             🧑  作者: Mango
Lodash是一个流行的JavaScript工具库,为开发人员提供了许多实用工具函数。其中之一是 _.uniqBy()
方法,它可以从数组中删除重复项,根据提供的属性值比较对象。
_.uniqBy(array, [iteratee=_.identity])
参数:
array
:需要去重的数组。iteratee
:用于计算每个元素的属性值的函数。返回一个新的去重后的数组。
const array = [
{ id: 1, name: 'John' },
{ id: 2, name: 'Alice' },
{ id: 3, name: 'Bob' },
{ id: 1, name: 'John' },
];
const uniqueArray = _.uniqBy(array, 'id');
console.log(uniqueArray);
// Output: [{ id: 1, name: 'John' }, { id: 2, name: 'Alice' }, { id: 3, name: 'Bob' }]
在这个例子中,我们首先定义了一个包含4个对象的数组,其中一些对象具有相同的 id
属性。然后,我们使用 _.uniqBy()
方法来根据 id
属性去除重复项,最终得到一个只有3个对象的数组。
尝试修改 _.uniqBy()
方法的第二个参数,可以比较不同属性,如:
_.uniqBy(array, 'name');
上面的代码将根据 name
属性去重,而不是 id
属性。
Lodash库提供了许多实用的工具函数,其中 _.uniqBy()
方法可以根据提供的属性值比较对象,并从数组中删除重复项。该方法接受两个参数,第一个是需要去重的数组,第二个是用于计算每个元素属性值的函数,也可以直接提供一个属性名称。方法返回一个新的去重后的数组。