免费搭建商业网站,wordpress接入短信,网络营销工作内容,html5电商网页制作/**取出字符串中重复字数最多的字符
*/
var words sdfghjkfastgbyhnvdstyaujskgfdfhlaa; //创建字符串
var word, //单个字符length; //该字符的长度
//… /**取出字符串中重复字数最多的字符
*/
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\nmax.wordLength); //递归结束后输出结果今天上午偶然看见这样的一个问题.看到网上大部分是用两个循环做出来的.然后自己用递归写了一下 思路是 每递归一次.取出第一个字符.从字符串中剔除相同符号的字符,并拿之前的字符串长度减去剔除后的字符串长度. 得到的是该字符串中当前字符所重复次数. 判断该字符重复次数是否大于当前输出对象中存储的maxLength. 如true,则更新 然后进入下次递归,直到字符串被替换完,终止 输出对象中存储的就是次数最多的字符以及重复的次数转载于:https://www.cnblogs.com/jiasm/p/4381354.html