Test name | Executions per second |
---|---|
getElementById() | 4879425.0 Ops/sec |
getElementsByClassName() | 2867562.5 Ops/sec |
getElementsByTagName() | 3781389.2 Ops/sec |
querySelector(#id) | 2714928.8 Ops/sec |
querySelector(.id) | 3599187.5 Ops/sec |
querySelectorAll(#id) | 1386657.4 Ops/sec |
querySelectorAll(.id) | 1737376.1 Ops/sec |
jQuery(#id) | 1511510.8 Ops/sec |
jQuery(.id) | 717626.3 Ops/sec |
jQuery(tag#id) | 486752.4 Ops/sec |
jQuery(tag.id) | 489784.1 Ops/sec |
jQuery + getElementById | 1767489.9 Ops/sec |
jQuery + getElementsByClassName | 647470.4 Ops/sec |
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.min.js"><script>
<script>jQuery.noConflict();</script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/cash/7.0.3/cash.min.js"></script>
<div id="foo" class="foo2"></div>
var el = document.getElementById("foo");
var className = el.className;
var el = document.getElementsByClassName("foo2");
var className = el.className;
var el = document.getElementsByTagName("div")[0];
var className = el.className;
var el = document.querySelector('#foo');
var className = el.className;
var el = document.querySelector('.foo2');
var className = el.className;
var el = document.querySelectorAll('#foo');
var className = el.className;
var el = document.querySelectorAll('.foo2');
var className = el.className;
var el = $("#foo");
var className = el.className;
var el = $(".foo2");
var className = el.className;
var el = $("div#foo");
var className = el.className;
var el = $("div.foo2");
var className = el.className;
var el = $(document.getElementById("foo"));
var className = el.className;
var el = $(document.getElementsByClassName("foo2"));
var className = el.className;
var el = jQuery("#foo");
var className = el.className;
var el = jQuery(".foo2");
var className = el.className;
var el = jQuery("div#foo");
var className = el.className;
var el = jQuery("div.foo2");
var className = el.className;
var el = jQuery(document.getElementById("foo"));
var className = el.className;
var el = jQuery(document.getElementsByClassName("foo2"));
var className = el.className;