functiondistinct1(array){var n = []; //一个新的临时数组//遍历当前数组for(var i = 0; i < array.length; i++){
//如果当前数组的第i已经保存进了临时数组,那么跳过,//否则把当前项push到临时数组里面if (n.indexOf(array[i]) == -1) n.push(array[i]);
}
return n;
}
2. 排序后相邻去除法
functiondistinct2(array){array.sort();
var re=[array[0]];
for(var i = 1; i < array.length; i++){
if( array[i] !== re[re.length-1]){
re.push(array[i]);
}
}
return re;
}
3. 对象键值对法(推荐)
function distinct3(array){
var n = {}, r = [], len = array.length, val, type;for (var i = 0; i < array.length; i++) {
val = array[i];
type = typeof val;
if (!n[val]) {
n[val] = [type];
r.push(val);
} elseif (n[val].indexOf(type) < 0) {
n[val].push(type);
r.push(val);
}
}
return r;
}
1. 常见function distinct1(array){ var n = []; //一个新的临时数组 //遍历当前数组 for(var i = 0; i &lt; array.length; i++){ //如果当前数组的第i已经保存进了临时数组,那么跳过, //否则把当前项push到临时数组里面 if (n....