<script src='https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.js'></script>
<div>
<ul>
<li><a href="#" name="name" class="classname">item 1</a></li>
<li><a href="#" name="name" class="classname">item 2</a></li>
<li><a href="#" name="name" class="classname">item 3</a></li>
<li><a href="#" name="name" class="classname">item 4</a></li>
<li><a href="#" name="name" class="classname">item 5</a></li>
<li><a href="#" name="name" class="classname">item 6</a></li>
<li><a href="#" name="name" class="classname">item 7</a></li>
<li><a href="#" name="name" class="classname">item 8</a></li>
<li><a href="#" name="name" class="classname">item 9</a></li>
<li><a href="#" name="name" class="classname">item 10</a></li>
</ul>
</div>
var nodes;
nodes = document.getElementsByClassName('classname');
nodes = document.querySelectorAll('.classname');
nodes = $('.classname');
--enable-precise-memory-info
flag.
Test case name | Result |
---|---|
getElementsByClassName | |
querySelectorAll | |
jQuery |
Test name | Executions per second |
---|---|
getElementsByClassName | 2185729.5 Ops/sec |
querySelectorAll | 592210.8 Ops/sec |
jQuery | 325027.1 Ops/sec |
Benchmark Explanation
The provided benchmark measures the performance of three different methods for selecting elements with a specific class in HTML documents: getElementsByClassName
, querySelectorAll
, and jQuery's $
function.
Comparison Options
document.getElementsByClassName()
API to retrieve all elements with the specified class name.document.querySelectorAll()
API to retrieve all elements with the specified CSS selector, which includes the class name.$
function to select elements with the specified class name.Pros and Cons
querySelectorAll
Cons:getElementsByClassName
querySelectorAll
API in the browserquerySelectorAll
Cons:Library Description
Special JS Features/ Syntax
None mentioned in the benchmark definition.
Other Alternatives
document.querySelector()
API to retrieve a single element that matches the specified CSS selector.$
function.Note: These alternatives are not part of the benchmark definition, but they may be useful options to consider depending on your specific use case and requirements.