getElementById and querySelector VS named element

JavaScript performance comparison

Revision 86 of this test case created

Info

This test shows the performance difference between getting the reference to a DOM element by calling getElementById, querySelector and accessing it via the named element of window.

The test only uses one HTML element with the id as the standard expects to only have one unique element with that ID in the DOM. Other than that the created object "node" will contain a collection if we use querySelector or the named element.

Preparation code

<script src="//ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
<div id="testid" class="testclass"></div>

Preparation code output

Test runner

Warning! For accurate results, please disable Firebug before running the tests. (Why?)

Java applet disabled.

Testing in unknown unknown
Test Ops/sec
getElementById
node = document.getElementById('testid');
 
pending…
querySelector
node = document.querySelector('#testid');
 
pending…
named elements
node = window.testid;
 
pending…
JQuery by ID
node = $('#testid')
pending…
JQuery by Name
node = $('div')
pending…
JQuery by class
node = $('.testclass')
pending…

Compare results of other browsers

Revisions

You can edit these tests or add even more tests to this page by appending /edit to the URL. Here’s a list of current revisions for this page:

0 comments

Add a comment