站长资讯网
最全最丰富的资讯网站

es5和es6怎么实现数组去重

es5中可以利用for语句和indexOf()函数来实现数组去重,语法“for(i=0;i<数组长度;i++){a=newArr.indexOf(arr[i]);if(a==-1){…}}”。在es6中可以利用扩展运算符、Array.from()和Set来去重;需要先将数组转为Set对象来去重,然后利用扩展运算符或Array.from()函数来将Set对象转回数组即可。

es5和es6怎么实现数组去重

本教程操作环境:windows7系统、ECMAScript 6版、Dell G3电脑。

es5 数组去重

indexOf 方法

使用indexOf(可返回某个指定的字符串值在字符串中首次出现的位置,如果首次出现,返回-1)

	var arr = [1,2,3,1,3,4,5]; 	Array.prototype.myInfo = function(){ 		var newArr = []; 		for(var i=0;i<arr.length;i++){ 			var a = newArr.indexOf(arr[i]); 			if(a == -1){ 				newArr[newArr.length] = arr[i]; 			} 		} 		return newArr; 	} 	var result = arr.myInfo(); 	console.log(result);
登录后复制

es5和es6怎么实现数组去重

es6 数组去重

1. Array.from 和 Set

Set不允许有重复的元素

	let arr = [1,2,1,2,3]; 	let result = new Set(arr);  	console.log(result); 			 	console.log(Array.from(result));
登录后复制

es5和es6怎么实现数组去重

2. rest 和 Set

rest 方法操作符为“

将字符从数组中剥离出来

	let arr = [1,2,1,2,3]; 	let result = new Set(arr);  	console.log(result); 	 	console.log(...result); 		 	console.log([...result]); 			  	console.log([...new Set(arr)]);
登录后复制

es5和es6怎么实现数组去重

赞(0)
分享到: 更多 (0)
网站地图   沪ICP备18035694号-2    沪公网安备31011702889846号