vue数组根据某个字段去重
时间: 2024-10-08 17:11:09 浏览: 42
vue中对象数组去重的实现
在 Vue.js 中,如果你有一个包含重复元素的数组,并希望基于某个字段去除重复项,你可以使用 JavaScript 的 `filter()` 和 `reduce()` 或者 `Set` 数据结构来实现。这里是一个示例:
```javascript
// 假设你有一个名为 'items' 的数组,每个对象都有一个 'name' 字段
let items = [
{ name: 'item1', otherField: 'value1' },
{ name: 'item1', otherField: 'value2' },
{ name: 'item2', otherField: 'value3' }
];
// 使用 filter() 和 reduce() 去除重复
let uniqueItems = items.filter((item, index, self) => {
return self.findIndex(i => i.name === item.name) === index;
}).map(item => ({ ...item }));
// 或者直接使用 Set,因为 Set 自然不包含重复值
let uniqueItemsSet = Array.from(new Set(items.map(item => item.name)));
uniqueItemsSet = uniqueItemsSet.map(name => items.find(item => item.name === name));
//
阅读全文