Toggle navigation
MeasureThat
.net
Create a benchmark
Tools
Feedback
Feature Requests
FAQ
Register
Log In
Run results for:
setAttribute(...) vs. classList.add(...) vs classList.value vs className
Go to the benchmark
Embed
Embed Benchmark Result
Run details:
User agent:
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/135.0.0.0 Safari/537.36
Browser:
Chrome 135
Operating system:
Mac OS X 10.15.7
Device Platform:
Desktop
Date tested:
one year ago
Benchmark engine:
Benchmark.js
ClassName
366K/s
setAttribute(...)
190K/s
classList.value
189K/s
classList.add(...)
97K/s
View exact numbers
Test name
Executions per second
✓
ClassName
366,260 Ops/sec
setAttribute(...)
189,508 Ops/sec
classList.value
188,832 Ops/sec
classList.add(...)
96,862 Ops/sec
HTML Preparation code:
<div id="foo"></div>
Tests:
setAttribute(...)
var element = document.getElementById("foo"); var i = 100; while (i--) { element.setAttribute("class", "bar"); }
classList.add(...)
var element = document.getElementById("foo"); var i = 100; while (i--) { element.classList.add("bar"); }
classList.value
var element = document.getElementById("foo"); var i = 100; while (i--) { element.classList.value = "bar"; }
ClassName
var element = document.getElementById("foo"); var i = 100; while (i--) { element.className = "bar"; }