当前位置: 首页> 科技> 能源 > js中数组去重的方法

js中数组去重的方法

时间:2025/7/12 3:26:11来源:https://blog.csdn.net/tianxianghuiwei/article/details/139889786 浏览次数:0次

数组去重有的方法:

1、用 ES6 中的 Set 数据结构:

let array = [1, 2, 2, 3, 4, 4, 5];
let uniqueArray = [...new Set(array)];
console.log(uniqueArray); // [1, 2, 3, 4, 5]

2、这种方法利用了 Set 对象不允许包含重复项的特性。你也可以使用 ES5 的方法,如下所示:

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

这个方法使用了 filter 函数和 indexOf 方法来创建一个新数组,其中包含原始数组中的唯一项。

下面的是函数方法:

      Array.prototype.method1 = function(){var arr[];    //定义一个临时数组for(var i = 0; i < this.length; i++){    //循环遍历当前数组//判断当前数组下标为i的元素是否已经保存到临时数组//如果已保存,则跳过,否则将此元素保存到临时数组中if(arr1.indexOf(this[i]) == -1){arr.push(this[i]);}}return arr;}
Array.prototype.method2 = function(){var h{};    //定义一个hash表var arr[];  //定义一个临时数组for(var i = 0; i < this.length; i++){    //循环遍历当前数组//对元素进行判断,看是否已经存在表中,如果存在则跳过,否则存入临时数组if(!h[this[i]]){//存入hash表h[this[i]] = true;//把当前数组元素存入到临时数组中arr.push(this[i]);}}return arr;}

 Array.prototype.method3 = function(){//直接定义结果数组var arr[this[0]];for(var i = 1; i < this.length; i++){    //从数组第二项开始循环遍历此数组//对元素进行判断://如果数组当前元素在此数组中第一次出现的位置不是i//那么我们可以判断第i项元素是重复的,否则直接存入结果数组if(this.indexOf(this[i]) == i){arr.push(this[i]);}}return arr;}

 Array.prototype.method4 = function(){//将数组进行排序this.sort();//定义结果数组var arr[this[0]];for(var i = 1; i < this.length; i++){    //从数组第二项开始循环遍历数组//判断相邻两个元素是否相等,如果相等说明数据重复,否则将元素写入结果数组if(this[i] !== arr[arr.length - 1]){arr.push(this[i]);}            }return arr;}

数组去重一般多用于数据处理使,进行数据添加时使用 ,大家可以根据情况进行使用

希望可以帮到大家; 

关键字:js中数组去重的方法

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: