gpt4 book ai didi

JQuery:删除重复元素?

转载 作者:行者123 更新时间:2023-12-03 21:28:18 25 4
gpt4 key购买 nike

假设我有一个包含重复值的链接列表,如下所示:

<a href="#">Book</a>
<a href="#">Magazine</a>
<a href="#">Book</a>
<a href="#">Book</a>
<a href="#">DVD</a>
<a href="#">DVD</a>
<a href="#">DVD</a>
<a href="#">Book</a>

我如何使用 JQuery 删除重复项并留下以下内容,例如:

<a href="#">Book</a>
<a href="#">Magazine</a>
<a href="#">DVD</a>

基本上,我正在寻找一种方法来删除找到的任何重复值并显示每个链接的 1 个。

最佳答案

var seen = {};
$('a').each(function() {
var txt = $(this).text();
if (seen[txt])
$(this).remove();
else
seen[txt] = true;
});

说明:

seen 是一个对象,它将任何以前看到的文本映射到 true。它的功能为 set包含所有以前见过的文本。 if (seen[txt]) 行检查文本是否在集合中。如果是这样,我们以前见过此文本,因此我们删除该链接。否则,这是我们第一次看到链接文本。我们将其添加到集合中,以便删除任何具有相同文本的其他链接。

表示集合的另一种方法是使用包含所有值的数组。但是,这会使其速度变慢,因为要查看某个值是否在数组中,我们每次都需要扫描整个数组。相比之下,使用 seen[txt] 查找对象中的键速度非常快。

关于JQuery:删除重复元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2822962/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com