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
function applyFn1(fn, args, ctx) {
switch (args.length) {
case 0: return fn.call(ctx); break;
case 1: return fn.call(ctx, args[0]); break;
case 2: return fn.call(ctx, args[0], args[1]); break;
case 3: return fn.call(ctx, args[0], args[1], args[2]); break;
default: return fn.apply(ctx, args);
}
}
function applyFn2(fn, args, ctx) {
if (4 in args) return fn.apply(ctx, args);
if (3 in args) return fn.call(ctx, args[0], args[1], args[2], args[3]);
if (2 in args) return fn.call(ctx, args[0], args[1], args[2]);
if (1 in args) return fn.call(ctx, args[0], args[1]);
if (0 in args) return fn.call(ctx, args[0]);
return fn.call(ctx); // ಠ_ಠ
}
function func() {
}
var arr0 = [];
var arr4 = [1, 2, 3, 4];
Ready to run.
Test | Ops/sec | |
---|---|---|
Option 1, 0 args |
| ready |
Option 2, 0 args |
| ready |
Option 1, 4 args |
| ready |
Option 2, 4 args |
| ready |
You can edit these tests or add more tests to this page by appending /edit to the URL.