js获取字符串出现次数最多_js如何获取字符串中出现次数最多的字符

我是一个不太会表达的人,所以我尽可能的用代码来阐释我的理解和思考,废话不多说,我就直接放代码了:

function getStingMax(str){

if(typeof str !== "string"){

alert("请传入string类型的数据")

return

}

let countObj ={},max=[{key:str[0],num:1}];

for(let i=0;i

let char=str[i];

countObj[char]=countObj[char]?countObj[char]+1:1;

}

for(let char in countObj){

if(max[0].num

max=[];

max[0]={key:char,num:countObj[char]}

}else if(max[0].num===countObj[char]){

max.push({key:char,num:countObj[char]})

}

}

console.log(max);

return {

max:max

}

}

在这段代码中,我先做了一个参数校验,保证传入的是字符串。然后将外部传入的str进行了计数,并将计数结果放在了countObj中。再对countObj的每个属性进行遍历,找出出现次数最多的字符串合集存入max数组,并把max数组打印出来。最后将得到max数组放在返回对象的max属性中返回出去(用对象返回是为了方便该方法以后的拓展)。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值