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
Which is faster?
<script>
(function(global){
var min = Math.min, max = Math.max;
function clamp1(x,a,b){return x<a?a:x>b?b:x}
function clamp2(x,a,b){return Math.min(Math.max(x,a),b)}
function clamp3(x,a,b){return min(max(x,a),b)}
function clamp4(num, min, max) {
if (num < min) return min;
if (max < num) return max;
return num;
}
function clamp5(num, min, max) {
if (min < num) {
if (num < max) {
return num;
}
return max;
}
return min;
}
global.clamp1 = clamp1;
global.clamp2 = clamp2;
global.clamp3 = clamp3;
global.clamp4 = clamp4;
global.clamp5 = clamp5;
})(window)
</script>
Ready to run.
Test | Ops/sec | |
---|---|---|
Using ? : |
| ready |
using Math object |
| ready |
using cached Math functions |
| ready |
Return fast if out of range |
| ready |
Return fast if in range |
| ready |
You can edit these tests or add more tests to this page by appending /edit to the URL.