教你一招数组去重的方法,终身受益

利用hash原理实现数组去重。

大致思路是 循环判断预先声明的对象中是否包含元素的属性,如果包含则跳过;如果不包含就为对象增加属性并且赋值,然后将元素push到预先声明的数组中并返回。

说的可能有点啰嗦了,直接上代码

var arr = [2,3,3,3,3,4,4,4,5,5,2,2,2,4];
	Array.prototype.unique = function(){
		var temp = {},
			arr = [],
			len = this.length;
		for (var i = 0; i < len; i++) {
			if(!temp[this[i]]){
				// 任意赋值
				temp[this[i]] = 'ydj';
				arr.push(this[i]);
			}
		}
		return arr;
		
	}
	console.log(arr.unique());

打印结果

怎么样是不是很happy!

猜你喜欢

转载自blog.csdn.net/qq_36818627/article/details/83314144
今日推荐