当前位置:首页 > jquery

jquery 去重

2026-04-08 12:43:20jquery

jQuery 数组去重方法

使用 jQuery 或纯 JavaScript 对数组进行去重有多种方法。以下是几种常见的方式:

使用 $.unique()

jQuery 提供了 $.unique() 方法,但需要注意它仅适用于 DOM 元素数组的去重,不适用于普通数组。

var arr = [1, 2, 2, 3, 4, 4, 5];
var uniqueArr = $.unique(arr); // 不适用于普通数组

使用纯 JavaScript 方法

对于普通数组,可以使用以下方法:

方法 1:使用 Set

var arr = [1, 2, 2, 3, 4, 4, 5];
var uniqueArr = [...new Set(arr)];
console.log(uniqueArr); // [1, 2, 3, 4, 5]

方法 2:使用 filter + indexOf

var arr = [1, 2, 2, 3, 4, 4, 5];
var uniqueArr = arr.filter(function(item, index) {
    return arr.indexOf(item) === index;
});
console.log(uniqueArr); // [1, 2, 3, 4, 5]

方法 3:使用 reduce

var arr = [1, 2, 2, 3, 4, 4, 5];
var uniqueArr = arr.reduce(function(acc, curr) {
    if (!acc.includes(curr)) {
        acc.push(curr);
    }
    return acc;
}, []);
console.log(uniqueArr); // [1, 2, 3, 4, 5]

使用 jQuery 的 $.grep()

虽然不是直接去重,但可以结合其他方法实现:

jquery 去重

var arr = [1, 2, 2, 3, 4, 4, 5];
var uniqueArr = [];
$.each(arr, function(i, item) {
    if ($.inArray(item, uniqueArr) === -1) {
        uniqueArr.push(item);
    }
});
console.log(uniqueArr); // [1, 2, 3, 4, 5]

注意事项

  • $.unique() 仅适用于 DOM 元素数组,不推荐用于普通数组。
  • 现代 JavaScript 的 Set 方法是最简洁高效的去重方式。
  • 如果需要兼容旧浏览器,可以使用 filter + indexOfreduce 方法。

标签: jquery
分享给朋友:

相关文章

jquery 之家

jquery 之家

jQuery 之家相关资源 jQuery 之家是一个提供 jQuery 插件、教程和代码示例的中文资源网站。以下是关于 jQuery 之家的一些有用信息: 网站内容 提供丰富的 jQuery 插件…

jquery 函数

jquery 函数

jQuery 函数基础 jQuery 是一个快速、简洁的 JavaScript 库,通过封装原生 JavaScript 功能简化 DOM 操作、事件处理、动画等。核心函数 $() 或 jQuery()…

jquery 版本

jquery 版本

以下是关于 jQuery 版本的详细信息: jQuery 主要版本概览 jQuery 目前有三个主要版本分支:1.x、2.x 和 3.x。每个分支针对不同的浏览器兼容性和功能需求设计。 jQuer…

jquery a标签

jquery a标签

jQuery 操作 <a> 标签的方法 jQuery 提供了多种方法来操作 <a> 标签(超链接),包括修改属性、内容、样式以及绑定事件等。以下是一些常见的操作方式: 修改…

jquery是什么

jquery是什么

jQuery 简介 jQuery 是一个快速、简洁的 JavaScript 库,设计用于简化 HTML 文档遍历、事件处理、动画设计和 Ajax 交互。它封装了常见的 JavaScript 功能,提供…

jquery异步

jquery异步

jQuery 异步操作概述 jQuery 提供了多种方法用于处理异步操作,主要包括 AJAX 相关函数和 Deferred/Promise 对象。这些方法简化了异步编程,尤其是在处理 HTTP 请求和…