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
This is a comparison of selector engine speed between jQuery 2.0.3 and Prototype 1.6.1 and _j 0.4.6
Curious to see how _jEach performs with jQuery fastEach. So looks like my while loop got replaced with a for when it got minified so rewrote it to see if that makes any difference.
<!doctype html>
<html>
<head>
<script src="//ajax.googleapis.com/ajax/libs/prototype/1.6.1/prototype.js">
</script>
<script src="//code.jquery.com/jquery-2.0.3.min.js"></script>
<script src="http://lzacorp.com/_jv0.4.6/_j.min.js"></script>
<script>
$.noConflict();
jQuery.fn.thisEach = function(fn){//fastEach
var t = jQuery([0]), l = this.length, i = -1, e;
while(
++i < l
&& (e = t[0] = this[i])
&& fn.call(t, i, e) !== false
)
return this;
};
</script>
</head>
<body>
<ul id="list">
<li>
<ul class="sublist">
<li>
item1
</li>
<li>
item2
</li>
</ul>
</li>
<li>
<ul class="sublist">
<li>
item1
</li>
<li>
item2
</li>
</ul>
</li><li>
<ul class="sublist">
<li>
item1
</li>
<li>
item2
</li>
</ul>
</li><li>
<ul class="sublist">
<li>
item1
</li>
<li>
item2
</li>
</ul>
</li>
</ul>
</body>
</html>
Ready to run.
Test | Ops/sec | |
---|---|---|
Prototype |
| ready |
jquery |
| ready |
_j |
| ready |
jQuery with fastEach |
| ready |
_jEach |
| ready |
_jEach2 |
| ready |
You can edit these tests or add more tests to this page by appending /edit to the URL.