日期:2014-05-16  浏览次数:20351 次

js数组去除重复元素
	function unique(data){
	  data = data || [];
	  var a = {};
	  for (var i=0; i<data.length; i++)
	  {
		  var v = data[i];
		  if (typeof(a[v]) == 'undefined')
		  {
			/*
			把原来的数组中的值当成数组多少索引,然后对索引进行赋值。重复的值就会被覆盖,因为索引是唯一的.相当于map的key,value
			例如:
			arr = ['a','b','a'];
			执行过程
			var a = {};
			a[arr[0]] = arr[0];//a['a'] = 'a';
			a[arr[1]] = arr[1];//a['b'] = 'b';
			a[arr[2]] = arr[2];//a['a'] = 'a';
			*/
			 a[v] = v;
		  }
	  }
	  data.length=0;
	  for (var i in a)
	  {
	   data[data.length] = i;
	  }
	   return data;
	}