原生JS去重(三)--判断字符串中重复最多的字母

版权声明:原创不易,如需转载,请注明出处。有梦想地需要你的一个赞(顶)。 https://blog.csdn.net/genius_yym/article/details/53068269

本博客主要讲判断字符串中重复最多的字母。
看代码。

//字符串重复最多的字母
function finMaxChar(str){

    //判断是不是字符串,如果是数组对象就转换
    if(typeof str == "object"){
        var str = str.join("");
    }else{
        var str = str;
    }

    //如果长度为1,直接返回
    if(str.length==1){
        return str;
    }

    var charObj = {};
    //遍历重复值
    for (var i = 0; i < str.length; i++)
    {
        //不相等  
        if( !charObj[ str.charAt(i) ] ){
            charObj[ str.charAt(i) ] = 1;
        }else{
            charObj[ str.charAt(i)] += 1;
        }

    }

    //判断大小
    var maxChar = '',maxVal = 1;
    for(var k in charObj){
        if( charObj[k]>=maxVal ){
            maxChar = k;
            maxVal = charObj[k];
        }
    }

    var indexVal = [];
    indexVal.push(maxChar);//最多的字符
    indexVal.push(maxVal);//最多的次数

    return indexVal;

}//function

var str = [1,2,1,2,13,3,3,3,3,3,3]
var str2 = "abccddd123456c"
console.log(finMaxChar(str));
console.log(finMaxChar(str2));

简单吧?
“`

阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页