Toggle navigation
MeasureThat
.net
Create a benchmark
Tools
Feedback
FAQ
Register
Log In
Run results for:
Remove all children from DOM element-1a
Go to the benchmark
Embed
Embed Benchmark Result
Run details:
User agent:
Mozilla/5.0 (iPhone; CPU iPhone OS 18_3_2 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/18.3.1 Mobile/15E148 Safari/604.1
Browser:
Mobile Safari 18
Operating system:
iOS 18.3.2
Device Platform:
Mobile
Date tested:
one year ago
Remove firstChild
54.4M/s
Remove lastChild
53.0M/s
lastChild.remove
51.7M/s
firstChild.remove
50.0M/s
replaceChildren
15.4M/s
View exact numbers
Test name
Executions per second
✓
Remove firstChild
54,408,124 Ops/sec
Remove lastChild
53,011,856 Ops/sec
lastChild.remove
51,747,116 Ops/sec
firstChild.remove
50,049,908 Ops/sec
replaceChildren
15,393,185 Ops/sec
HTML Preparation code:
<div id='messages'></div>
Script Preparation code:
const html = []; for(i=0; i<1000; i++) { html.push("<span>Text</span>"); } document.getElementById("messages").insertAdjacentHTML('beforeend', html)
Tests:
Remove firstChild
let list = document.getElementById("messages"); while (list.firstChild) { list.removeChild(list.firstChild); }
Remove lastChild
let list = document.getElementById("messages"); while (list.lastChild) { list.removeChild(list.lastChild); }
firstChild.remove
let list = document.getElementById("messages"); while (list.firstChild) { list.firstChild.remove(); }
lastChild.remove
let list = document.getElementById("messages"); while (list.lastChild) { list.lastChild.remove(); }
replaceChildren
let list = document.getElementById("messages"); list.replaceChildren();