Toggle navigation
MeasureThat.net
Create a benchmark
Tools
Feedback
FAQ
Register
Log In
Run results for:
className.replace vs classList.replace vs classList.remove/add
Based on the test (className vs. setAttribute vs. classList - measurethat.net/Benchmarks/Show/3108)
Go to the benchmark
Embed
Embed Benchmark Result
Run details:
User agent:
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/139.0.0.0 Safari/537.36
Browser:
Chrome 139
Operating system:
Windows
Device Platform:
Desktop
Date tested:
8 months ago
Test name
Executions per second
className replace
247301.9 Ops/sec
classList replace
218429.4 Ops/sec
classList remove add
236425.6 Ops/sec
HTML Preparation code:
<div id="foo" class="asd4as sd33kf asdjbn qS4ves kjsdfd foo k3kjjf u33hh8 kkj28j nb23mb sdd2ON"></div>
Script Preparation code:
var foo = document.getElementById('foo');
Tests:
className replace
foo.className = foo.className.replace(/(?<=\s|^)foo(?=\s|$)/,'bar'); foo.className = foo.className.replace(/(?<=\s|^)bar(?=\s|$)/,'foo');
classList replace
foo.classList.replace('foo','bar'); foo.classList.replace('bar','foo');
classList remove add
foo.classList.remove('foo'); foo.classList.add('foo');