js-remove duplicate array element

<span style="font-size:24px;"><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
	<head>
		<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
		<title>Untitled Document</title>
		
		<script type=text/javascript charset=utf-8>
			
			
			var arr = [2,1,2,10,2,3,5,5,1,10,13];	//object
			
			
			// js对象的特性 : 在js对象中 key 是永远不会重复的 
			
		/*	var obj = new Object();
			obj.name = 'z3';
			obj.age = 20 ;
			alert(obj.name);
			obj.name = 'w5';
			alert(obj.name);
		*/	
			
			// 1 把数组转成一个js的对象
			// 2 把数组中的值,变成js对象当中的key
			// 3 把这个对象 再还原成数组
			
			// 把数组转成对象
			function toObject(arr){
				var obj = {} ; // 私有的对象
				var j ;
				for(var i=0 , j= arr.length ; i<j; i++){
						obj[arr[i]] = true ;
				}
				return obj ;
			}
			
			// 把这个对象转成数组
			function keys(obj){
				var arr = [] ; // 私有对象
				for(var attr in obj){
					if(obj.hasOwnProperty(attr)){		//YUI底层代码
						arr.push(attr);
					}
				}
				return arr ;
			}
			
			//综合的方法 去掉数组中的重复项
			function uniq(newarr){
				return keys(toObject(newarr));
			}
			
			alert(uniq(arr));
			
			

			
			
			
			
			
			
			
		</script>
	</head>
	<body>
	</body>
</html>
</span>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值