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


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 相关文章推荐
js简单实现删除记录时的提示效果
Dec 05 Javascript
jQuery EasyUI实现右键菜单变灰不可用效果
Sep 24 Javascript
js图片轮播手动切换效果
Nov 10 Javascript
JS实现的表格操作类详解(添加,删除,排序,上移,下移)
Dec 22 Javascript
详解JS中的this、apply、call、bind(经典面试题)
Sep 19 Javascript
webpack+vue2构建vue项目骨架的方法
Jan 09 Javascript
JS实现json对象数组按对象属性排序操作示例
May 18 Javascript
vue滚动固定顶部及修改样式的实例代码
May 30 Javascript
详解Angular Karma测试的持续集成实践
Nov 15 Javascript
快速解决vue2+vue-cli3项目ie兼容的问题
Nov 17 Vue.js
addEventListener()和removeEventListener()追加事件和删除追加事件
Dec 04 Javascript
Vue全家桶入门基础教程
May 14 Vue.js
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
通过PHP CLI实现简单的数据库实时监控调度
2009/07/01 PHP
php的ZipArchive类用法实例
2014/10/20 PHP
php搜索文件程序分享
2015/10/30 PHP
php layui实现前端多图上传实例
2019/07/30 PHP
ASP.NET jQuery 实例7 通过jQuery来获取DropDownList的Text/Value属性值
2012/02/03 Javascript
js中reverse函数的用法详解
2013/12/26 Javascript
原生JS实现LOADING效果
2015/03/16 Javascript
Vue 全局loading组件实例详解
2018/05/29 Javascript
浅谈Node 异步IO和事件循环
2019/05/05 Javascript
详解jenkins自动化部署vue
2019/05/14 Javascript
小程序组件之自定义顶部导航实例
2019/06/12 Javascript
微信小程序实现下拉刷新动画
2019/06/21 Javascript
通过js示例讲解时间复杂度与空间复杂度
2019/08/06 Javascript
Vue 解决在element中使用$notify在提示信息中换行问题
2020/11/11 Javascript
[01:21]辉夜杯战队访谈宣传片—CDEC
2015/12/25 DOTA
[52:20]DOTA2-DPC中国联赛正赛 SAG vs XGBO3 第一场 3月5日
2021/03/11 DOTA
Python中的fileinput模块的简单实用示例
2015/07/09 Python
一键搞定python连接mysql驱动有关问题(windows版本)
2016/04/23 Python
python代码 if not x: 和 if x is not None: 和 if not x is None:使用介绍
2016/09/21 Python
python 实现调用子文件下的模块方法
2018/12/07 Python
详解字符串在Python内部是如何省内存的
2020/02/03 Python
多重CSS背景动画实现方法示例
2014/04/04 HTML / CSS
CSS+jQuery+PHP+MySQL实现的在线答题功能
2015/04/25 HTML / CSS
利用CSS3的3D效果制作正方体
2020/03/10 HTML / CSS
美国男装连锁零售商:Men’s Wearhouse
2016/10/14 全球购物
美国高端寝具品牌:Coyuchi
2017/02/08 全球购物
家庭睡衣和家庭用品:Little Blue House
2018/03/18 全球购物
美国翻新电子产品商店:The Store
2019/10/08 全球购物
八皇后问题,输出了所有情况,不过有些结果只是旋转了90度
2016/08/15 面试题
竞选团支书演讲稿
2014/04/28 职场文书
计算机专业毕业生自荐书
2014/06/02 职场文书
合同意向书范本
2014/07/30 职场文书
中学生关于梦想的演讲稿
2014/08/22 职场文书
学习礼仪心得体会
2014/09/01 职场文书
简单的辞职信范文(2016最新版)
2015/05/12 职场文书
vue完美实现el-table列宽自适应
2021/05/08 Vue.js