无为清净楼资源网 Design By www.qnjia.com

复制代码 代码如下:
<script type="text/javascript">
var a = "testthisprojecthelloworld!";
var b = {};
var c = null;
for (var i in a) {
!isNaN(b[a[i]]++) || (b[a[i]] = 1);
c = b[a[i]] > c ? a[i] : c;
}
alert(c + ":" + b[c]);
</script>

isNaN(x)如果x是特殊的非数字值NaN(或者能被转换为这样的值),返回的值就是true。如果x是其他值,则返回false。
i是index
如果第一次循环
a[i]是't'
b[a[i]]是b['t']访问下标是't'的对象
b[a[i]]++不是数字的++始终为NaN
isNaN(b[a[i]]++)是true因为b没有下标是t的对象b现在是空的
!isNaN(b[a[i]]++)是false
!isNaN(b[a[i]]++)||(b[a[i]]=1);或运算符||一个为真就是真左边表达式为false所以接着执行右边的表达式可以看成条件语句的简写if(isNaN(b[a[i]]++)){b[a[i]]=1}
(b[a[i]]=1);左边的不成立就设置b的下标b['t']=1;
再次循环如果遇到t就会成功执行t++如果没有就继续设置下标
这个例子没有考虑空格,特殊字符等。

标签:
字符串,出现,次数最多,字母

无为清净楼资源网 Design By www.qnjia.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
无为清净楼资源网 Design By www.qnjia.com