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 (X11; Linux x86_64; rv:139.0) Gecko/20100101 Firefox/139.0
Browser:
Firefox 139
Operating system:
Linux
Device Platform:
Desktop
Date tested:
10 months ago
Test name
Executions per second
className replace
335770.2 Ops/sec
classList replace
269534.9 Ops/sec
classList remove add
311371.2 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');