site/node_modules/ccount/index.js
2024-10-14 08:09:33 +02:00

28 lines
619 B
JavaScript

/**
* Count how often a character (or substring) is used in a string.
*
* @param {string} value
* Value to search in.
* @param {string} character
* Character (or substring) to look for.
* @return {number}
* Number of times `character` occurred in `value`.
*/
export function ccount(value, character) {
const source = String(value)
if (typeof character !== 'string') {
throw new TypeError('Expected character')
}
let count = 0
let index = source.indexOf(character)
while (index !== -1) {
count++
index = source.indexOf(character, index + character.length)
}
return count
}