博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
数组去重方法 数组取最小值
阅读量:3527 次
发布时间:2019-05-20

本文共 2083 字,大约阅读时间需要 6 分钟。

数组去重方法

2017年10月

 

1、arr.filter()

var arr = [0,0,1,'a',1,2,'b','a','a'];    var res = arr.filter(function(ele,index,array){        return index === array.indexOf(ele);    });    document.write(res);

2、先排序再去重

function unique(arr) {        var arr2 = arr.sort();        console.log(arr2);        var res = [arr2[0]];        for(var i = 1; i < arr2.length; i++){            console.log(arr2[i]+','+res[res.length-1]);            console.log(res);            if(arr2[i] !== res[res.length-1]){                res.push(arr2[i]);            }        }        return res;    }    var arr3 = unique([0,0,1,'a',1,2,'b','a','a']);    document.write(arr3);

3、利用对象的属性去重

function unique(arr){        var res =[];        var json = {};        for(var i = 0; i < arr.length; i++){            if(!json[arr[i]]){                res.push(arr[i]);                json[arr[i]] = 1;            }        }        return res;    }    var arr3 = unique([0,0,1,'a',1,2,'b','a','a']);    document.write(arr3);

4、利用下标查询

function unique(arr){        var newArr = [arr[0]];        for(var i = 1; i < arr.length; i++){            if(newArr.indexOf(arr[i]) == -1){                newArr.push(arr[i]);            }        }        return newArr;    }    var arr3 = unique([0,0,1,'a',1,2,'b','a','a']);    document.write(arr3);

5、定义一个新数组,并存放原数组的第一个元素,然后将元素组一一和新数组的元素对比,若不同则存放在新数组中。

function unique(arr) {        var res = [arr[0]];        for(var i = 0; i < arr.length; i++){            var repeat = false;            for(var j = 0; j < res.length; j++){                if(arr[i] == res[j]){                    repeat = true;                    break;                }            }            if(!repeat){                res.push(arr[i]);            }        }        return res;    }    var arr2 = unique([0,0,1,'a',1,2,'b','a','a']);    document.write(arr2);

 6、es6的set方法

const res = new Set();var arr =[0,0,1,'a',1,2,'b','a','a'];arr.forEach(x => res.add(x)); console.log(res);
 

7、数组取最小值

 

function maxarr(arr){

 

var minval=Math.min.apply(null,arr)

var minindex=arr.indexOf(minval) //最小值索引

 return minval;

}

maxarr(arr);

 

转载地址:http://wkchj.baihongyu.com/

你可能感兴趣的文章
python opencv视频提取前景
查看>>
python opencv视频中对象跟踪
查看>>
python opencv流光
查看>>
python将numpy多维数据转换成以为数组
查看>>
python opencv Kmeans聚类
查看>>
python将字符串形式的列表转换成真实列表
查看>>
python list按第二个元素排序
查看>>
pyinstaller打包folium相关项目
查看>>
python tkinter的简要应用
查看>>
python将pandas底层数据转numpy
查看>>
python pandas入门(1)
查看>>
ubuntu pip升级以后报错sys.stderr.write(f“ERROR: {exc}“)
查看>>
python pandas入门(2)
查看>>
python 格式化日期time
查看>>
django models增、删、改、查
查看>>
python numpy转list
查看>>
Django IntegerField设置取值范围
查看>>
python三个常用函数
查看>>
python优化提速技巧
查看>>
解决浏览器报跨域访问本地json等文件报错问题
查看>>