zoukankan      html  css  js  c++  java
  • 数组去重

    方法一:

    新建一数组,遍历传入数组,值不在新数组就push劲新数组里 ie8以下不支持indexOf方法

       var newArr=[];
        var arr=[1,2,"2",4,9,"a","a",2,3,5,6,5];
        for(var i=0;i<arr.length;i++){
            if(newArr.indexOf(arr[i])<0){
                newArr.push(arr[i]);
            }
        }

    方法二:

    • 新建一js对象以及新数组

    • 遍历传入数组时,判断是否为js对象的键,不是的话给对象新增该键并放入新数组

    • 判断是否为js对象键时   会自动传入的键执行 "toString()"
    function uniq(arr){
            var temp={},newArr=[],val,type;
            for(var i=0;i<arr.length;i++){
                val=arr[i];
                type=typeof val;
                if(!temp[val]){
                    //判断是否存在这个js对象键
                    temp[val]=[type];
                    newArr.push(val);
                }else if(temp[val].indexOf(type) < 0){
                    //由于传入的键会自动执行 "toString()"   所以要区别下类型
                    temp[val].push(type);
                    newArr.push(val);
                }
            }
            return newArr;
        }
        var arr=[1,2,"2",4,9,"a","a",2,3,5,6,5];
        uniq(arr);

      

  • 相关阅读:
    【瞎口胡】基础数学 1 快速幂 整除 最大公约数
    【瞎口胡】二分图
    Windos下使用Redis
    VUE的踩坑日记(1)
    公告
    [维度打击]最大连续子序列
    常用函数
    树状数组
    高精度封装
    T4 模板之 单个文件
  • 原文地址:https://www.cnblogs.com/yuzihong/p/10388527.html
Copyright © 2011-2022 走看看