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.