找出字符串中出现次数最多的字母和出现次数精简版


Posted in Javascript onNovember 07, 2012
<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++如果没有就继续设置下标
这个例子没有考虑空格,特殊字符等。
Javascript 相关文章推荐
PNG背景在不同浏览器下的应用
Jun 22 Javascript
js动态给table添加/删除tr的方法
Aug 02 Javascript
Javascript将字符串日期格式化为yyyy-mm-dd的方法
Oct 27 Javascript
JavaScript实现经典排序算法之冒泡排序
Dec 28 Javascript
jQuery基于正则表达式的表单验证功能示例
Jan 21 Javascript
利用Vue.js实现求职在线之职位查询功能
Jul 03 Javascript
webpack写jquery插件的环境配置
Dec 21 jQuery
JS实现关键词高亮显示正则匹配
Jun 22 Javascript
微信小程序发送短信验证码完整实例
Jan 07 Javascript
vue如何实现自定义底部菜单栏
Jul 01 Javascript
jsonp格式前端发送和后台接受写法的代码详解
Nov 07 Javascript
JS实现网页端猜数字小游戏
Mar 06 Javascript
jquery 如何动态添加、删除class样式方法介绍
Nov 07 #Javascript
探索Emberjs制作一个简单的Todo应用
Nov 07 #Javascript
关于使用 jBox 对话框的提交不能弹出问题解决方法
Nov 07 #Javascript
seajs1.3.0源码解析之module依赖有序加载
Nov 07 #Javascript
Javascript引用指针使用介绍
Nov 07 #Javascript
JavaScript在多浏览器下for循环的使用方法
Nov 07 #Javascript
Javascript的数组与字典用法与遍历对象的属性技巧
Nov 07 #Javascript
You might like
yii上传文件或图片实例
2014/04/01 PHP
详解提高使用Java反射的效率方法
2019/04/29 PHP
php设计模式之策略模式实例分析【星际争霸游戏案例】
2020/03/26 PHP
基于jquery的回到页面顶部按钮
2011/06/27 Javascript
JavaScript在多浏览器下for循环的使用方法
2012/11/07 Javascript
使用JS读秒使用示例
2013/09/21 Javascript
Jquery 实现grid绑定模板
2015/01/28 Javascript
使用JavaScript开发IE浏览器本地插件实例
2015/02/18 Javascript
浅谈JavaScript中setInterval和setTimeout的使用问题
2015/08/01 Javascript
js实现仿爱微网两级导航菜单效果代码
2015/08/31 Javascript
jQuery事件对象的属性和方法详解
2017/09/09 jQuery
给vue项目添加ESLint的详细步骤
2017/09/29 Javascript
探讨Vue.js的组件和模板
2017/10/27 Javascript
使用puppeteer破解极验的滑动验证码
2018/02/24 Javascript
bootstrap datepicker的基本使用教程
2019/07/09 Javascript
jQuery Ajax async=&gt;false异步改为同步时,解决导致浏览器假死的问题
2019/07/22 jQuery
如何构建 vue-ssr 项目的方法步骤
2020/08/04 Javascript
Python最基本的数据类型以及对元组的介绍
2015/04/14 Python
在Python中操作列表之List.append()方法的使用
2015/05/20 Python
python3去掉string中的标点符号方法
2019/01/22 Python
python监控进程状态,记录重启时间及进程号的实例
2019/07/15 Python
对Python生成器、装饰器、递归的使用详解
2019/07/19 Python
基于Python的一个自动录入表格的小程序
2020/08/05 Python
英国家喻户晓的家居商店:The Range
2019/03/25 全球购物
365 Tickets英国:全球景点门票
2019/07/06 全球购物
毕业生简单求职信
2013/11/19 职场文书
保密协议书范本
2014/04/22 职场文书
全国税务系统先进集体事迹材料
2014/05/19 职场文书
学校标语大全
2014/06/19 职场文书
活动总结格式
2014/08/30 职场文书
2015年项目工作总结
2015/04/29 职场文书
博物馆观后感
2015/06/05 职场文书
python通配符之glob模块的使用详解
2021/04/24 Python
详解Spring事件发布与监听机制
2021/06/30 Java/Android
关于nginx 实现jira反向代理的问题
2021/09/25 Servers
Python中with上下文管理协议的作用及用法
2022/03/18 Python