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


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 相关文章推荐
一个XML格式数据转换为图表的例子
Feb 09 Javascript
js 全兼容可高亮二级缓冲折叠菜单
Jun 04 Javascript
JQuery开发的数独游戏代码
Oct 29 Javascript
jQuery实现checkbox全选的方法
Jun 10 Javascript
CSS3实现动态背景登录框的代码
Jul 28 Javascript
如何判断Javascript对象是否存在的简单实例
May 18 Javascript
js倒计时小实例(多次定时)
Dec 08 Javascript
vue2笔记 — vue-router路由懒加载的实现
Mar 03 Javascript
fetch 使用及如何接收JS传值
Nov 11 Javascript
vue router 用户登陆功能的实例代码
Apr 24 Javascript
js使用cookie实现记住用户名功能示例
Jun 13 Javascript
Vue2.X和Vue3.0数据响应原理变化的区别
Nov 07 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
JavaScript写的一个自定义弹出式对话框代码
2010/01/17 Javascript
JavaScript中的闭包原理分析
2010/03/08 Javascript
DIY jquery plugin - tabs标签切换实现代码
2010/12/11 Javascript
js网页版计算器的简单实现
2013/07/02 Javascript
jQuery父级以及同级元素查找介绍
2013/09/04 Javascript
javascript 循环调用示例介绍
2013/11/20 Javascript
node.js中Socket.IO的进阶使用技巧
2014/11/04 Javascript
javascript实现多级联动下拉菜单的方法
2015/02/06 Javascript
javascript实现数组内值索引随机化及创建随机数组的方法
2015/08/10 Javascript
javascript实现状态栏中文字动态显示的方法
2015/10/20 Javascript
原生js配合cookie制作保存路径的拖拽
2015/12/29 Javascript
微信js-sdk界面操作接口用法示例
2016/10/12 Javascript
JS实现双击内容变为可编辑状态
2017/03/03 Javascript
JavaScript实现的选择排序算法实例分析
2017/04/14 Javascript
jquery DataTable实现前后台动态分页
2017/06/17 jQuery
JavaScript实现三级联动菜单效果
2017/08/16 Javascript
javascript获取指定区间范围随机数的方法
2017/09/08 Javascript
vuejs使用axios异步访问时用get和post的实例讲解
2018/08/09 Javascript
封装一下vue中的axios示例代码详解
2020/02/16 Javascript
详解ES6数组方法find()、findIndex()的总结
2020/05/12 Javascript
在服务器端实现无间断部署Python应用的教程
2015/04/16 Python
Python关于excel和shp的使用在matplotlib
2019/01/03 Python
解决pycharm编辑区显示yaml文件层级结构遇中文乱码问题
2020/04/27 Python
python实现磁盘日志清理的示例
2020/11/05 Python
用python查找统一局域网下ip对应的mac地址
2021/01/13 Python
求两个数的乘积和商数,该作用由宏定义来实现
2013/03/13 面试题
体育教师自荐信范文
2013/12/16 职场文书
数控专业自荐书范文
2014/03/16 职场文书
安全生产专项整治方案
2014/05/06 职场文书
爱国主义教育活动总结
2014/05/07 职场文书
小学生环保倡议书
2014/05/15 职场文书
面试自我评价范文
2014/09/17 职场文书
支教个人总结
2015/03/04 职场文书
毕业生捐书活动倡议书
2015/04/27 职场文书
MySQL快速插入一亿测试数据
2021/06/23 MySQL
阿里云服务器Ubuntu 20.04上安装Odoo 15
2022/05/20 Servers