• js数组去重,并统计最多项算法


    从事了一段时间的前端开发,今天写了一个数组去重,并统计最多项的方法,目前只支持数组的项都是数字。

    由于本人能力有限,希望能得到网友的指正!如有问题或者更好的实现思路,也欢迎大家和我讨论!代码如下:

    function getMax(arr){
        var obj = {},
            l = arr.length,
            key = [],
            val = [];
        for(var i = 0;i<l;i++){
            !obj[arr[i]] ? obj[arr[i]] = 1 : obj[arr[i]] += 1;
        }
        for(i in obj){
            key.push(i);
            val.push(obj[i]);
        }
        var max = Math.max.apply("",val);
        var pos = (function(){
            var j , len = val.length;
            for(j=0;j<len;j++){
                if(max == val[j]){
                    return j;
                }
            }
        })();
        console.log("出现最多的项是:"+key[pos]+",出现次数为:"+val[pos])
    }

    var arr = [1,2,3,4,4,1,1];

    getMax(arr);

    测试结果如下:

    转载请注明出处:http://www.cnblogs.com/callmesummer/p/3938120.html

     拿出手机扫一扫,希望大家能支持一下:

  • 相关阅读:
    py基础之模块与包
    py装饰器,生成器,迭代器
    py函数式编程
    py基础之列表生成式
    算法基础之递归算法
    Py基础之函数
    py基础之无序列表
    py基础之数据类型及基本语法
    jsp报错问题汇总
    mysql问题汇总
  • 原文地址:https://www.cnblogs.com/callmesummer/p/3938120.html
Copyright © 2020-2023  润新知