Toggle navigation
MeasureThat.net
Create a benchmark
Tools
Feedback
FAQ
Register
Log In
Run results for:
Count char occurrence in string
http://stackoverflow.com/questions/4009756/how-to-count-string-occurrence-in-string http://stackoverflow.com/questions/881085/count-the-number-of-occurences-of-a-character-in-a-string-in-javascript
Go to the benchmark
Embed
Embed Benchmark Result
Run details:
User agent:
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Safari/537.36
Browser:
Chrome 128
Operating system:
Mac OS X 10.15.7
Device Platform:
Desktop
Date tested:
one year ago
Test name
Executions per second
regex
720311.9 Ops/sec
split
3245172.5 Ops/sec
indexOf1
1459711.2 Ops/sec
indexOf2
1503799.6 Ops/sec
singleChar
535844.1 Ops/sec
Script Preparation code:
function regex (s, c) { return (s.match(new RegExp(c, "g")) || []).length; } function split (s, c) { return s.split(c).length - 1; } function indexOf1 (s, c) { var i = 0, count = 0; while ((i = s.indexOf(c, i)) >= 0) { count++; i++; } return count; } function indexOf2 (s, c) { for (let i = -2, count = -1; i != -1; count++, i = s.indexOf(c, i + 1)); } function singleChar (s, c) { for(let i = 0, count = 0, l = s.length; i < l; count += +(c === s[i++])); } var s = "Maecenas sed lacus erat. Sed fringilla dui ac mollis condimentum. Suspendisse bibendum nulla eros, ut lobortis orci posuere quis. Nunc fringilla ut metus ultrices dictum. Nunc elementum feugiat leo. Ut fermentum, enim vel vehicula posuere, metus eros imperdiet risus, at elementum mauris urna et quam. Ut vehicula, velit at placerat ornare, nulla nisi finibus sapien, non elementum tellus purus in ex. Donec pharetra elit in rhoncus placerat. Sed volutpat eget justo ut dapibus. Mauris consectetur turpis ac euismod aliquam. Sed pellentesque pretium nunc, nec rhoncus leo euismod ut. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Curabitur gravida sed urna quis tempus. Nam aliquet tortor convallis libero mollis luctus."; var c = "a";
Tests:
regex
window.result = regex(s, c);
split
window.result = split(s, c);
indexOf1
window.result = indexOf1(s, c);
indexOf2
window.result = indexOf2(s, c);
singleChar
window.result = singleChar(s, c);