<!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 = [1,1,2,3,3,4,8,8,5,6,6,9];
//js對象的特性: 對象中的 key 永遠不會重復
/*
var obj = {};
obj.name = 'zhangsan';
//alert(obj.name);
obj.name = 'lisi';
alert(obj.name); //會覆蓋掉張三
*/
//1,把數組轉成 js 對象
//2,把數組中的值 變成js對象的key
//3,把這個對象 再還原成數組
//把數組轉對象
function toObj(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(toObj(newarr));
}
alert(uniq(arr)); //
</script>
</head>
<body>
</body>
</html>