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 (Windows NT 10.0; Win64; x64; rv:135.0) Gecko/20100101 Firefox/135.0
Browser:
Firefox 135
Operating system:
Windows
Device Platform:
Desktop
Date tested:
one year ago
Benchmark engine:
Benchmark.js
ClassName
84K/s
classList.value
41K/s
setAttribute(...)
30K/s
classList.add(...)
18K/s
View exact numbers
Test name
Executions per second
✓
ClassName
84,241 Ops/sec
classList.value
40,948 Ops/sec
setAttribute(...)
29,628 Ops/sec
classList.add(...)
18,059 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"; }