用JavaScript压缩字符串
我们需要编写一个JavaScript函数,该函数接受一个可能包含一些连续重复字符的字符串。
该函数应该像这样压缩字符串-
'wwwaabbbb' -> 'w3a2b4''kkkkj' -> 'k4j'
并且如果压缩字符串的长度大于或等于原始字符串,则应返回原始字符串。
例如-
'aab'可以压缩为'a2b1',但是它的长度增加到4,所以我们的函数应该返回'aab'
示例
为此的代码将是-
const str1 = 'wwwaabbbb';输出结果const str2 = 'kkkkj';
const str3 = 'aab';
const compressString = (str = '') => {
let res = '';
let count = 1;
for(let i = 0; i < str.length; i++){
let cur = str[i];
let next = str[i + 1];
if(cur === next){
count++;
}else{
res += cur + String(count);
count = 1;
};
}
returnres.length<str.length? res : str;
};
console.log(compressString(str1));
console.log(compressString(str2));
console.log(compressString(str3));
控制台中的输出将是-
3a2b4k4j1
aab
以上是 用JavaScript压缩字符串 的全部内容, 来源链接: utcz.com/z/337079.html