本文介绍了获取单词中重复次数最多的字母的计数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在尝试计算单词中重复次数最多的字母
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.
更多推荐
获取单词中重复次数最多的字母的计数
发布评论