一、传统的解决方法:将原数组的每一个元素放到一个新的数组,放之前判断是否在新数组中存在,如果不存在,则放入,否则不放入。新数组则是过滤后的不重复数组。
function unique(arr) {
var result = [], isRepeated;
for (var i = 0, len = arr.length; i < len; i++) {
isRepeated = false;
for (var j = 0, len = result.length; j < len; j++) {
if (arr[i] == result[j]) {
isRepeated = true;
break;
}
}
if (!isRepeated) {
result.push(arr[i]);
}
}
return result;
}
二、利用 hash , jason 对属性的可重复赋值解决
arr = [1, 3, 4, 6, 3, 6, 8];
j = {};
for (i = 0; i < arr.length; i++) {
j[arr[i]] = arr[i];
}
for (var i in j)
alert(i.toString());