js数组不排序去重、数组排序去重、去除数组有重复项的元素

数组不排序去重三种方法

 var arr = [4,1,2,1,4,2,5,1,4,2];
    
    var newArr = [];
//利用indexof 方法 ,有匹配的项目返回下标,无匹配时候返回-1
    arr.forEach(function (item,index,arr) {
        if(newArr.indexOf(item) == -1){
            newArr.push(item);
        }
    })
    console.log(newArr);

    var newArr = [];
    arr.forEach(function (item,index,arr) {
    //注意这里用arr,当判断相等的时候,代表这个值第一次出现,就插入
        if(arr.indexOf(item) === index){
            newArr.push(item);
        }
    })
    console.log(newArr);

    var newArr = [];
    arr.forEach(function (item,index,arr) {
        if(arr.indexOf(item,index) === arr.lastIndexOf(item) ){
            newArr.push(item);
        }
    })
    console.log(newArr);

数组排序去重方法

 var arr = [1,3,2,2,4,2,1,6,4,2];
    // 先排序 后去重
    
    arr.sort(function (a,b) {
        return a-b;
    })
    console.log(arr);
    var newArr = [];
    for (var i = 0; i < arr.length; i++) {
        if (arr[i] == arr[i+1]){
            continue;
        }
        newArr.push(arr[i]);
    }
    console.log(newArr);

去除数组有重复项的元素

var newArr = [];
    arr.forEach(function (item,index) {
        if (arr.indexOf(item) == arr.lastIndexOf(item)){
            newArr.push(item);
        }
    })
    console.log(newArr);
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。