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
Let's test the different versions of jQuery library for: * selectors * DOM traversing * DOM manipulation * form serialization * events
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.js">
</script>
<script type="text/javascript">
var j4 = jQuery.noConflict();
</script>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.js">
</script>
<script type="text/javascript">
var j3 = jQuery.noConflict();
</script>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.2.6/jquery.js">
</script>
<script type="text/javascript">
var j2 = jQuery.noConflict();
</script>
<script src="//jqueryjs.googlecode.com/files/jquery-1.1.4.js">
</script>
<script type="text/javascript">
var j1 = jQuery.noConflict();
</script>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1/jquery.js">
</script>
<script type="text/javascript">
var j15 = jQuery.noConflict();
</script>
<div id="test">
<div class="testlink">
<a href="#" id="linkone" title="test">test link</a>
</div>
<div class="testmenu">
<ul>
<li class="menuitem itemone">
<a href="#" title="item 1">menu item 1</a>
</li>
<li class="menuitem itemtwo">
<a href="#" title="item 2">menu item 2</a>
</li>
<li class="menuitem itemthree">
not clickable item 3
</li>
</ul>
</div>
</div>
<form action="" method="get">
<p>
<input type="hidden" name="a" value="abc" />
<input type="hidden" name="b" value="1.0" />
<input type="hidden" name="c" value="1" />
</p>
</form>
<script>
var selectors = ['body', 'div', 'body div', 'div a', 'div > a', 'div[class^=test]', 'div, li, a', '.menuitem', 'li.menuitem', '#linkone', 'div#test', 'a[title*=item]', 'a[title=test]', 'div:not(.testlink)', 'li:nth-child(even)', 'li:nth-child(odd)', 'li:last-child', 'li:first-child'];
var htmlafter = '<a href="#" id="linktwo" title="test">test link 2</a>';
var htmlappend = '<span> 1</span>';
clickaction = function() {
return $(this);
}
</script>
Ready to run.
Test | Ops/sec | |
---|---|---|
jQuery 1.4 |
| ready |
jQuery 1.3 |
| ready |
jQuery 1.2 |
| ready |
jQuery 1.1 |
| ready |
jQuery1.52 |
| ready |
You can edit these tests or add more tests to this page by appending /edit to the URL.