jsPerf.app is an online JavaScript performance benchmark test runner & jsperf.com mirror. It is a complete rewrite in homage to the once excellent jsperf.com now with hopefully a more modern & maintainable codebase.
jsperf.com URLs are mirrored at the same path, e.g:
https://jsperf.com/negative-modulo/2
Can be accessed at:
https://jsperf.app/negative-modulo/2
var words = ["lorem","ipsum","dolor","sit","amet","consectetur","adipiscing","elit","donec","convallis","elit","ut","lacinia","bibendum","augue","lorem","fermentum","mauris","in","vestibulum","mi","sapien","tempor","dolor","sed","sapien","dui","pharetra","et","ultricies","quis","egestas","vitae","diam","nulla","lobortis","quam","ut","nulla","mollis","rhoncus","molestie","ipsum","vestibulum","proin","condimentum","lacinia","felis","sit","amet","tincidunt","fusce","eu","suscipit","sem","proin","in","libero","vel","leo","eleifend","pretium","pellentesque","justo","orci","iaculis","ut","pharetra","ac","aliquet","accumsan","nisi","donec","tortor","leo","sodales","in","faucibus","nec","rhoncus","a","ipsum","fusce","non","fringilla","arcu","aenean","consequat","nisi","id","massa","sodales","ullamcorper","in","hac","habitasse","platea","dictumst","vivamus","accumsan","lacus","sit","amet","quam","vehicula","viverra","pellentesque","porttitor","sagittis","velit","eget","auctor","sed","sem","nulla","lobortis","ac","cursus","at","sollicitudin","eget","tellus","quisque","eu","diam","tellus","etiam","eu","nunc","erat","fusce","nec","nibh","quis","erat","consectetur","sollicitudin","in","sagittis","arcu","vitae","nibh","faucibus","et","dignissim","sem","gravida","nulla","facilisi","donec","id","nullam"];
var matcher = new RegExp(words.join("|"), "ig");
var map = {};
words.forEach(function(word) {
map[word] = 1;
});
function f1(str) {
return str.match(matcher);
}
function f2(str) {
var matches = []
words.forEach(function(word) {
if (~str.indexOf(word)) matches.push(word)
});
return matches;
}
function f3(str) {
var matches = [];
str = str.toLowerCase();
words.forEach(function(word) {
if (map[word]) matches.push(word)
});
return matches
}
Ready to run.
Test | Ops/sec | |
---|---|---|
Regexp |
| ready |
loop |
| ready |
You can edit these tests or add more tests to this page by appending /edit to the URL.