使用 JavaScript 查找字符串中连续重复次数最长的字符及其长度

问题

我们需要编写一个接受字符串的 JavaScript 函数。我们的函数应该返回一个正好包含两个元素的数组,第一个元素是在字符串中连续出现次数最多的字符,第二个是它出现的次数。

示例

以下是代码 -

const str = 'tdfdffddffsdsfffffsdsdsddddd';
const findConsecutiveCount = (str = '') => {
   let res='';
   let count=1;
   let arr = []
   for (let i=0;i<str.length;i++){
      if (str[i]===str[i+1]){
         count++
      } else {
         if (arr.every(v=>v<count)){
            res=str[i]+count
         }
         arr.push(count)
         count=1
      }
   }
   return !res?['',0]:[res.slice(0,1),res.slice(1)*1];
};
console.log(findConsecutiveCount(str));
输出结果
['f', 5]

猜你喜欢