获取单词中重复次数最多的字母的计数 [英] Get count of most repeated letter in a word
本文介绍了获取单词中重复次数最多的字母的计数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在尝试计算单词中重复次数最多的字母
I am trying to get the count of the most repeated letter in a word
function GreatestCount(str)
{
var count = {}
for (var i = 0 ; i<str.length;i++)
{
var char = str[i];
count[char] = (count[char] || 0) + 1;
}
//get the largest number for the letter counts
var max = 0;
for (var c in count) {
if (count[c] > max) max = count[c];
}
return max
}
有人可以向我解释为什么
can someone explain to me why
count[char] = (count[char] || 0) + 1;// this works
count[char] += 1 // this does not work
推荐答案
因为
count[char] += 1
等于
count[char] = count[char] + 1
第一次运行代码时,count[char]
是undefined
,因此它与
and the first time the code is run, count[char]
is undefined
so it's pretty much the same as
undefined + 1 // which is NaN
工作版本通过使用||
运算符安全地添加0
来避免这种情况.
The working version circumvents this case by safely adding with 0
using ||
operator.
这篇关于获取单词中重复次数最多的字母的计数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文