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 f = function() {
return this;
};
var that = {
f: f
};
var bound = f.bind(that);
var wrappedCall = function() {
f.call(that);
};
var slice = Array.prototype.slice;
Function.prototype.bind2 = function(_this) {
var _self = this;
var args = slice.call(arguments, 1);
if (args.length === 0) {
return function() {
if (arguments.length === 0) return _self.call(_this);
else if (arguments.length > 0) return _self.apply(_this, args);
}
}
return function() {
if (arguments.length === 0) return _self.apply(_this, args);
var a2 = args.contact(slice.call(arguments));
return _self.apply(_this, a2);
}
}
var bound2 = f.bind2(that);
var name = 'f';Ready to run.
| Test | Ops/sec | |
|---|---|---|
| bounded | | ready |
| apply | | ready |
| call | | ready |
| bind | | ready |
| bind2 | | ready |
| by string | | ready |
| by string (indirect) | | ready |
| direct (local) | | ready |
| Wrapped Call | | ready |
You can edit these tests or add more tests to this page by appending /edit to the URL.