Toggle navigation
MeasureThat
.net
Create a benchmark
Tools
Feedback
FAQ
Register
Log In
Run results for:
Remove all children from DOM element
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/123.0.0.0 Safari/537.36
Browser:
Chrome 123
Operating system:
Windows
Device Platform:
Desktop
Date tested:
2 years ago
firstChild.remove
4.0M/s
Remove lastChild
3.9M/s
Remove firstChild
3.9M/s
textContent
3.1M/s
innerHTML
3.0M/s
innerText
2.5M/s
range
901K/s
View exact numbers
Test name
Executions per second
✓
firstChild.remove
3,974,630 Ops/sec
Remove lastChild
3,876,654 Ops/sec
Remove firstChild
3,869,241 Ops/sec
textContent
3,063,698 Ops/sec
innerHTML
2,995,019 Ops/sec
innerText
2,530,330 Ops/sec
range
900,853 Ops/sec
HTML Preparation code:
<div id='messages'></div>
Script Preparation code:
let list = document.getElementById("messages"); for(i=0; i<1000; i++) { list.innerHTML += "<span>Text</span>" }
Tests:
Remove firstChild
let list = document.getElementById("messages"); while (list.firstChild) { list.removeChild(list.firstChild); }
Remove lastChild
let list = document.getElementById("messages"); while (list.firstChild) { list.removeChild(list.firstChild); }
innerHTML
document.getElementById("messages").innerHTML = "";
innerText
document.getElementById("messages").innerText = "";
textContent
document.getElementById("messages").textContent = "";
firstChild.remove
let list = document.getElementById("messages"); while (list.firstChild) { list.firstChild.remove() }
range
var range = new Range(); range.selectNodeContents(document.getElementById("messages")); range.deleteContents();