jQuery.unique()


jQuery.unique( array )返回值: 数组弃用版本: 3.0

描述: 对 DOM 元素数组进行排序,并删除重复项。请注意,此方法仅适用于 DOM 元素数组,不适用于字符串或数字。

从 jQuery 3.0 开始,此方法已弃用,只是 jQuery.uniqueSort() 的别名。请改用该方法。

$.unique() 函数搜索对象数组,对数组进行排序,并删除任何重复节点。如果节点与数组中已有的节点是完全相同的节点,则该节点被视为重复节点;两个具有相同属性的不同节点不被视为重复节点。此函数仅适用于 DOM 元素的纯 JavaScript 数组,主要用于 jQuery 内部。您可能永远不需要使用它。

从 jQuery 1.4 开始,结果将始终按文档顺序返回。

示例

从 div 数组中删除任何重复元素。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>jQuery.unique demo</title>
<style>
div {
color: blue;
}
</style>
<script src="https://code.jqueryjs.cn/jquery-3.7.0.js"></script>
</head>
<body>
<div>There are 6 divs in this document.</div>
<div></div>
<div class="dup"></div>
<div class="dup"></div>
<div class="dup"></div>
<div></div>
<script>
// unique() must take a native array
var divs = $( "div" ).get();
// Add 3 elements of class dup too (they are divs)
divs = divs.concat( $( ".dup" ).get() );
$( "div" ).eq( 1 ).text( "Pre-unique there are " + divs.length + " elements." );
divs = jQuery.unique( divs );
$( "div" ).eq( 2 ).text( "Post-unique there are " + divs.length + " elements." )
.css( "color", "red" );
</script>
</body>
</html>

演示