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
<script>
function whileLoop(number, targetLength) {
var output = number + '';
while (output.length < targetLength) {
output = '0' + output;
}
return output;
};
function arrayJoin(number, targetLength) {
if ((number = number + "").length < targetLength) {
return new Array((++targetLength) - number.length).join("0") + number;
} else {
return number;
}
}
function binaryLoop(number, targetLength) {
// See also
// jsperf(dot)com/ultimate-string-repetition
if (Math.ceil(Math.log(number) / Math.LN10) < targetLength) {
var pad = "", add = "0", len = targetLength;
for (; len; len >>= 1, add += add)
if (len & 1) pad += add;
return (pad + number).slice(-targetLength);
} else return number + "";
}
</script>
Ready to run.
Test | Ops/sec | |
---|---|---|
Array.join 1e20 |
| ready |
binary loop 1e5 |
| ready |
binary loop 1e20 |
| ready |
while loop 1e5 |
| ready |
Array.join 1e5 |
| ready |
while loop 1e20 |
| ready |
You can edit these tests or add more tests to this page by appending /edit to the URL.