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 src="https://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js">
</script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/3.5.0/lodash.min.js">
</script>
var arr = [];
for (var i = 0; i < 10000; i++) {
arr.push({
Number: i
});
};
var e = null;
function Named(o, i) {
e = o;
};
var forEach = function (array, callback, scope) {
for (var i = 0; i < array.length; i++) {
callback.call(scope, i, array[i]); // passes back stuff we need
}
};
Array.prototype.forEachShim=function(e,t){var n,r;if(this==null)throw new TypeError(" this is null or not defined");var i=Object(this),s=i.length>>>0;if(typeof e!="function")throw new TypeError(e+" is not a function");arguments.length>1&&(n=t),r=0;while(r<s){var o;r in i&&(o=i[r],e.call(n,o,r,i)),r++}};
Ready to run.
Test | Ops/sec | |
---|---|---|
Jquery each |
| ready |
Lodash each |
| ready |
For normal |
| ready |
For reversed |
| ready |
Native array forEach |
| ready |
Native array forEach with Named function |
| ready |
Lodash forEachRight |
| ready |
For normal supercache |
| ready |
For normal supercache reversed |
| ready |
User-defined forEach |
| ready |
Array forEach call |
| ready |
Array.prototype.forEach shim |
| ready |
You can edit these tests or add more tests to this page by appending /edit to the URL.