javascript获取重复次数最多的字符


Posted in Javascript onJuly 08, 2015

javascript获取重复次数最多的字符

/**
  取出字符串中重复字数最多的字符
*/
var words = 'sdfghjkfastgbyhnvdstyaujskgfdfhlaa';  
 //创建字符串
var word,  











 //单个字符
  length; 











 //该字符的长度
//定义输出对象
var max = {
  wordName : '', 









 //重复次数最多的字符
  wordLength : 0 









 //重复的次数
};
//递归方法,传入字符串
(function(words) {
  if (!words) return;         //如果字符串已经变空则返回,结束递归
  word  = words[0];         //取出字符串中的第一个字符
  length = words.length;         //将length设为当前字符串长度
  words  = words.replace(new RegExp(word, 'g'), ''); //返回将字符串剔除当前字符的剩余字符串
  length = length - words.length;      //重设length为当前字符在字符串中的长度
  if (length > max.wordLength)       //如果该字符重复次数大于maxLength,则重设maxLength为当前字符重复次数
    max = {               //重设对象的值
      wordName  : word,            
      wordLength : length       
    };              
  arguments.callee(words);        //递归调用,传入剩余字符串
})(words);
console.log(max.wordName+"\n"+max.wordLength);     //递归结束后输出结果

今天上午偶然看见这样的一个问题.看到网上大部分是用两个循环做出来的.然后自己用递归写了一下

思路是

每递归一次.取出第一个字符.从字符串中剔除相同符号的字符,并拿之前的字符串长度减去剔除后的字符串长度.

得到的是该字符串中当前字符所重复次数.

判断该字符重复次数是否大于当前输出对象中存储的maxLength.

如true,则更新

然后进入下次递归,直到字符串被替换完,终止

输出对象中存储的就是次数最多的字符以及重复的次数

以上所述就是本文的全部内容了,希望大家能够喜欢。

Javascript 相关文章推荐
JavaScript 动态生成方法的例子
Jul 22 Javascript
图片翻转效果具体实现代码
Jan 09 Javascript
Javascript中的String对象详谈
Mar 03 Javascript
jquery控制表单输入框显示默认值的方法
May 22 Javascript
jquery中取消和绑定hover事件的实现代码
Jun 02 Javascript
利用JavaScript实现栈的数据结构示例代码
Aug 02 Javascript
JS中原始值和引用值的储存方式示例详解
Mar 23 Javascript
Swiper 4.x 使用方法(移动端网站的内容触摸滑动)
May 17 Javascript
vue-自定义组件传值的实例讲解
Sep 18 Javascript
如何在JavaScript中优雅的提取循环内数据详解
Mar 04 Javascript
vue 搭建后台系统模块化开发详解
May 01 Javascript
layui表单验证select下拉框实现验证的方法
Sep 05 Javascript
javascript连续赋值问题
Jul 08 #Javascript
JavaScript中函数(Function)的apply与call理解
Jul 08 #Javascript
JavaScript forEach()遍历函数使用及介绍
Jul 08 #Javascript
JavaScript中调用函数的4种方式代码实例
Jul 08 #Javascript
JavaScript对象属性检查、增加、删除、访问操作实例
Jul 08 #Javascript
jquery获取多个checkbox的值异步提交给php
Jul 07 #Javascript
浅谈jQuery中setInterval()方法
Jul 07 #Javascript
You might like
WINXP下apache+php4+mysql
2006/11/25 PHP
基于AppServ,XAMPP,WAMP配置php.ini去掉警告信息(NOTICE)的方法详解
2013/05/07 PHP
国产PHP开发框架myqee新手快速入门教程
2014/07/14 PHP
php通过ksort()函数给关联数组按照键排序的方法
2015/03/18 PHP
微信支付PHP SDK之微信公众号支付代码详解
2015/12/09 PHP
JQuery Study Notes 学习笔记(一)
2010/08/04 Javascript
jQuery实现类似淘宝购物车全选状态示例
2013/06/26 Javascript
解决Jquery load()加载GB2312页面时出现乱码的两种方案
2013/09/10 Javascript
解析JavaScript中的不可见数据类型
2013/12/02 Javascript
js获得参数的getParameter使用示例
2014/02/26 Javascript
jQuery中next()方法用法实例
2015/01/07 Javascript
js实现横向伸展开的二级导航菜单代码
2015/08/28 Javascript
基于jQuery实现带动画效果超炫酷的弹出对话框(附源码下载)
2016/02/22 Javascript
jQuery通过ajax方法获取json数据不执行success的原因及解决方法
2016/10/15 Javascript
JS百度地图搜索悬浮窗功能
2017/01/12 Javascript
JavaScript数组复制详解
2017/02/02 Javascript
Jquery获取radio选中的值
2017/05/05 jQuery
protractor的安装与基本使用教程
2017/07/07 Javascript
vue+vux实现移动端文件上传样式
2017/07/28 Javascript
在vue项目中优雅的使用SVG的方法实例详解
2018/12/03 Javascript
浅谈JavaScript 声明提升
2020/09/14 Javascript
js实现磁性吸附的示例
2020/10/26 Javascript
JQuery+drag.js上传图片并且实现图片拖曳
2020/11/18 jQuery
Python 装饰器使用详解
2017/07/29 Python
python 随机数使用方法,推导以及字符串,双色球小程序实例
2017/09/12 Python
Python实现串口通信(pyserial)过程解析
2019/09/25 Python
Python 网络编程之UDP发送接收数据功能示例【基于socket套接字】
2019/10/11 Python
纯css3制作煽动翅膀的蝴蝶的示例
2018/04/23 HTML / CSS
美国杰西潘尼官网:JCPenney
2019/06/12 全球购物
高级运动鞋:GREATS
2019/07/19 全球购物
质检部岗位职责
2013/11/11 职场文书
应聘收银员个人的求职信
2013/11/30 职场文书
中学生运动会入场词
2014/02/12 职场文书
大学生简短的自我评价分享
2014/02/20 职场文书
中餐厅经理岗位职责
2014/04/11 职场文书
小学教师年度个人总结
2015/02/05 职场文书