var data = [ {id: 8, user_id: 1, title_name: '测试'}, {id: 7, user_id: 1, title_name: '测试3'}, {id: 8, user_id: 1, title_name: '测试'}, {id: 7, user_id: 1, title_name: '测试3'}, {id: 6, user_id: 1, title_name: '测试2'}, ];用jquery unique不能去除重复的数据
时间: 2024-02-07 20:04:19 浏览: 98
jQuery的$.unique()方法只能去除DOM元素数组中的重复元素,并不能用于普通的JavaScript对象数组。如果要去除普通的JavaScript对象数组中的重复元素,可以自己编写函数实现。以下是一种实现方式:
```javascript
function uniqueArray(arr, key) {
let result = [];
let obj = {};
for (let i = 0; i < arr.length; i++) {
if (!obj[arr[i][key]]) {
result.push(arr[i]);
obj[arr[i][key]] = true;
}
}
return result;
}
let data = [
{id: 8, user_id: 1, title_name: '测试'},
{id: 7, user_id: 1, title_name: '测试3'},
{id: 8, user_id: 1, title_name: '测试'},
{id: 7, user_id: 1, title_name: '测试3'},
{id: 6, user_id: 1, title_name: '测试2'}
];
let uniqueData = uniqueArray(data, 'id');
console.log(uniqueData);
```
这个函数接受两个参数,第一个参数是要去重的数组,第二个参数是要作为判断重复的关键字。在这个例子中,我们以对象的"id"属性作为关键字,去重后的结果为:
```javascript
[
{id: 8, user_id: 1, title_name: '测试'},
{id: 7, user_id: 1, title_name: '测试3'},
{id: 6, user_id: 1, title_name: '测试2'}
]
```
阅读全文