本文介绍了Javascript:如何从重复的数组值中只删除一个值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个数组 ['2530491','2530491','2530491','2530492'] 2530491 重复三次,我想从其中3个中删除单个值2530491,因此输出结果如下:
['2530491','2530491','2530492' ]

I have an array ['2530491','2530491','2530491','2530492'] the 2530491 is duplicated thrice, and I want to remove a single value of 2530491 from 3 of them, so the output would be like : ['2530491','2530491','2530492'].

fileArrayAnnounce_size = jQuery.grep(fileArrayAnnounce_size, function(value){
  return value != file_size.metas[0].size;
});

我尝试抓住但它删除所有相同的值。我想从重复项中只删除一个值。

I try grip but it removes all value which same. I want to remove only a single value from duplicates.

推荐答案

您可以检查给定元素是否具有重复元素,如果是 - 从原始数组中只删除指定元素的一个重复条目。

You could check if given element has dupe elements or not, if so - remove just one duplicate entry of specified element from the original array.

var arr = ['2530491','2530491','2530491','2530492'],
    hash = [...new Set(arr)];
    hash.forEach((v,i) => arr.indexOf(v) != arr.lastIndexOf(v) ? arr.splice(arr.indexOf(v), 1) : null);
    
    console.log(arr);

这篇关于Javascript:如何从重复的数组值中只删除一个值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-15 22:50