Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/88.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 如何显示已删除的文本副本数?_Jquery_Count_Duplicate Removal - Fatal编程技术网

Jquery 如何显示已删除的文本副本数?

Jquery 如何显示已删除的文本副本数?,jquery,count,duplicate-removal,Jquery,Count,Duplicate Removal,我正在使用代码删除重复项,如下所述:。它工作得很好,但我找不到代码来显示每个元素的重复项被删除的次数。我认为这很简单,但我对jquery不是很有经验 由于 })) })) 它现在可以正确打印出: -项目1(4) -项目2(1) -项目3(5) 其中括号之间的数字是它被删除的次数(+1)。我建议您创建一个额外的数组,对每个文本的重复项进行计数 counters = Array(); if (seen[txt]) { $(this).remove(); count++; c

我正在使用代码删除重复项,如下所述:。它工作得很好,但我找不到代码来显示每个元素的重复项被删除的次数。我认为这很简单,但我对jquery不是很有经验

由于

}))

}))

它现在可以正确打印出: -项目1(4) -项目2(1) -项目3(5)


其中括号之间的数字是它被删除的次数(+1)。

我建议您创建一个额外的
数组,对每个
文本的重复项进行计数

counters = Array();

if (seen[txt]) {
    $(this).remove();
    count++;
    counters[txt]++; 
} else {
    seen[txt] = true;
    counters[txt] = 1;
}

这是一个正在工作的

var seen = {};
var counter = {};
var length = $('#links1 a, #links2 a').length;              //Length of <a> elements
console.log(length);
$('#links1 a, #links2 a').each(function(i) {
    var txt = $(this).text();
    if(seen[txt]){
        $(this).remove();
        counter[txt]++;
    }
    else{
        seen[txt]=true;
        counter[txt] = 1; 
    }
    if(i==(length-1)){                                      //Last iteration

        $.each(counter , function(i, val) { 
            $('p#first').append('<p>'+i+': '+val+'</p>');   //Print Text and its Occurence.
        });


    }

});
var-seen={};
var计数器={};
变量长度=$('链接1 a,'链接2 a')。长度//元素长度
控制台日志(长度);
$('链接1 a,'链接2 a')。每个(功能(i){
var txt=$(this.text();
如果(见[txt]){
$(this.remove();
计数器[txt]++;
}
否则{
seed[txt]=真;
计数器[txt]=1;
}
如果(i==(长度-1)){//最后一次迭代
$.each(计数器,函数(i,val){
$('p#first')。追加(''+i+':'+val+'

');//打印文本及其出现时间。 }); } });


在上一次迭代后,您只需打印所有的值和索引。

对此进行修改。您得到了什么结果?使用此代码,我只看到所有项,因此它们不会被删除。只需使用字典计数,并在最后打印值即可<代码>for(seen中的var x)console.log(seen[x])
运行良好,感谢Tobias,但对于您的代码,我仍然看不到括号中的数字。我错过什么了吗?谢谢是的,这可以很好地打印列表,但是我需要在打印的链接后面有值。“#links1 a”指的是链接,它使用原始代码只正确打印一次这些链接,我需要后面的值。我想我们快到了,谢谢你的帮助。你说落后是什么意思?你能举个例子吗?它把链接打印成:。我想要后面的值(在链接之后或链接内部,都不重要)。当我尝试将您的代码附加到链接时,我当然会从每个链接中获得您的全文。我只需要链接的计数值。因此,是否要将输出设置为
。输出已经是一个链接(我目标链接的副本,删除重复项)。我想知道链接后面删除的副本的值。
counters = Array();

if (seen[txt]) {
    $(this).remove();
    count++;
    counters[txt]++; 
} else {
    seen[txt] = true;
    counters[txt] = 1;
}
var seen = {};
var counter = {};
var length = $('#links1 a, #links2 a').length;              //Length of <a> elements
console.log(length);
$('#links1 a, #links2 a').each(function(i) {
    var txt = $(this).text();
    if(seen[txt]){
        $(this).remove();
        counter[txt]++;
    }
    else{
        seen[txt]=true;
        counter[txt] = 1; 
    }
    if(i==(length-1)){                                      //Last iteration

        $.each(counter , function(i, val) { 
            $('p#first').append('<p>'+i+': '+val+'</p>');   //Print Text and its Occurence.
        });


    }

});