className VS classList Showdown

JavaScript performance comparison

Revision 6 of this test case created

Info

How much faster is classList.add className += ?

Preparation code

<style type="text/css">
  .foo { color:#F00; height:100px; opacity:0.3; } .bar { color:#0F0; height:200px;
  opacity:0.5; } .baz { color:#00F; height:300px; opacity:0.7; }
</style>
<div id="base" class="foo bar">
  <div class="foo bar baz">
    test 1
  </div>
  <span class="foo bar">
    test 2
  </span>
  <span class="baz">
    test 3
  </span>
</div>
<script>
Benchmark.prototype.setup = function() {
    var node = document.getElementById('base'),
        className = 'baz';
   
};

Benchmark.prototype.teardown = function() {
    node.className = '';
};
</script>

Preparation code output

test 1
test 2 test 3

Test runner

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

Java applet disabled.

Testing in unknown unknown
Test Ops/sec
classList (add)
node.classList.add('foo');
 
pending…
className += (add)
node.className += ' foo';
 
pending…
className =
node.className = 'foo';
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