Pure js hasClass vs jQuery hasclass

JavaScript performance comparison

Revision 28 of this test case created

Preparation code

<div class="super cali frag ilist ic expi ali docious tinker tailor soldier sailor richman poorman beggarman Thief" id="someElement"></div><script src="//ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
<script>
  var el = document.getElementById('someElement');
 
  function hasClass(el, selector) {
    return (el.className.indexOf(selector) >= 0);
  }

  function hasClassRegex(el, selector) {
    return (el.className && new RegExp("(^|\\s)" + selector + "(\\s|$)").test(el.className));
  }

  function classListContains(el, selector){
    return el.classList.contains(selector);
  }
</script>

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
jQuery
$(el).hasClass('Thief');
pending…
Pure JS - indexOf
hasClass(el, 'Thief');
pending…
Pure JS - regex
hasClassRegex(el, 'Thief');
pending…
DOM
classListContains(el, 'Thief');
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