ClassList versus ClassName

JavaScript performance comparison

Revision 2 of this test case created by Kashey

Preparation code

<div id="foo"
 fooEl = document.getElementById('foo');
</script><script src=""></script>
Benchmark.prototype.setup = function() {
  fooEl.className = 'aaaa bbbb cccc dddd';
  jFooEl = jQuery(fooEl);


Preparation code output

<div id="foo" ></div> <script src=""></script>

Test runner

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

Java applet disabled.

Testing in CCBot 2.0.0 / Other 0.0.0
Test Ops/sec
Class List
fooEl.classList.remove('ffff');    // actually adds
fooEl.classList.add('bbbb');    // duplicate
fooEl.classList.remove('eeee'); // not found
fooEl.classList.add('ffff');    // actually adds
Raw Class Name
fooEl.className = 'aaaa bbbb cccc dddd';
fooEl.className += ' bbbb';
fooEl.className = 'aaaa bbbb cccc dddd bbbb';
fooEl.className += 'ffff';

Compare results of other browsers


You can edit these tests or add even more tests to this page by appending /edit to the URL.

1 Comment