频道栏目
首页 > 资讯 > 其他 > 正文

数组去重方法教程

17-10-17        来源:[db:作者]  
收藏   我要投稿

方法一:

    function unique(array){
        var temp = []; 
        for(var i = 0; i < array.length; i++){
             //判断临时数组是否有该数组元素存在,不存在则放入
            if(temp.indexOf(array[i]) == -1){
                temp.push(array[i]);
            }
        }
        return temp;
    }

    var array = [1,2,2,4,9,6,7,5,2,3,5,6,5];
    console.log(unique(array));

方法二:

 function unique(arr) {
    arr.sort();
    var temp = [arr[0]];
    for(var i = 1; i < arr.length; i ++) {
        // 判断遍历的元素和临时数组最后一个元素是否相同,
        if (arr[i] !== temp[temp.length-1]) {
            temp.push(arr[i]); // 如果不相同,那就push到临时数组
        }
    }
    return temp; // 返回临时数组
 }
 var arr = [1,2,2,4,9,6,7,5,2,3,5,6,5];
 console.log(unique(arr));

方法三:

function unique(arr) {
    var temp = [arr[0]]; 
    for(var i = 1; i < arr.length; i++) {
        //判断第i项元素是否在临时数组中第一次出现的位置是i,
        if (arr.indexOf(arr[i]) == i) { // 如果不是i,表示是重复项
            temp.push(arr[i]); // 如果是i,就push元素到临时数组中
        }
    }
    return temp;
}
var arr = [1,2,2,4,9,6,7,5,2,3,5,6,5];
console.log(unique(arr));

方法四:

function unique(arr){
    arr.sort();
    var temp = [];
    for(var i = 0; i < arr.length; i++) {
        for(var j = i + 1; j < arr.length; j++){
            if (arr[i] === arr[j]){
                i++;
                j = i;
            }
        }
        temp.push(arr[i]);
    }
    return temp;
}

var arr = [1,2,2,4,9,6,7,5,2,3,5,6,5];
console.log(unique(arr));
相关TAG标签
上一篇:Cisco路由器VLan隔离局域网广播包配置实验及总结
下一篇:一句话总结C++所有设计模式和索引
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站