jquery 去重
jQuery 数组去重方法
使用 jQuery 可以对数组进行去重操作,以下是几种常见的方法:
使用 $.unique() 方法
$.unique() 是 jQuery 提供的去重方法,但它仅适用于 DOM 元素数组的去重,不适用于普通数组。
示例:

var arr = [1, 2, 2, 3, 4, 4, 5];
var uniqueArr = $.unique(arr); // 不适用于普通数组
使用 $.grep() 和 $.inArray()
结合 $.grep() 和 $.inArray() 可以实现数组去重。
示例:

var arr = [1, 2, 2, 3, 4, 4, 5];
var uniqueArr = $.grep(arr, function(item, index) {
return $.inArray(item, arr) === index;
});
console.log(uniqueArr); // [1, 2, 3, 4, 5]
使用 ES6 Set(推荐)
虽然不是 jQuery 原生方法,但在现代浏览器中,结合 jQuery 可以更高效地实现去重。
示例:
var arr = [1, 2, 2, 3, 4, 4, 5];
var uniqueArr = [...new Set(arr)];
console.log(uniqueArr); // [1, 2, 3, 4, 5]
使用 $.each() 和对象键值去重
通过遍历数组并利用对象的键唯一性实现去重。
示例:
var arr = [1, 2, 2, 3, 4, 4, 5];
var temp = {};
$.each(arr, function(index, item) {
temp[item] = true;
});
var uniqueArr = Object.keys(temp).map(Number);
console.log(uniqueArr); // [1, 2, 3, 4, 5]
注意事项
$.unique()仅适用于 DOM 元素数组,普通数组需使用其他方法。- 推荐使用 ES6
Set方法,简洁高效。 - 如果需兼容旧浏览器,可使用
$.grep()或遍历方法。






