rsuite-theme
Version:
The suite theme for pagurian
39 lines (30 loc) • 715 B
JavaScript
;
/* Expose. */
module.exports = longestStreak;
/* Get the count of the longest repeating streak of
* `character` in `value`. */
function longestStreak(value, character) {
var count = 0;
var maximum = 0;
var expected;
var index;
if (typeof character !== 'string' || character.length !== 1) {
throw new Error('Expected character');
}
value = String(value);
index = value.indexOf(character);
expected = index;
while (index !== -1) {
count++;
if (index === expected) {
if (count > maximum) {
maximum = count;
}
} else {
count = 1;
}
expected = index + 1;
index = value.indexOf(character, expected);
}
return maximum;
}