Toggle navigation
MeasureThat.net
Create a benchmark
Tools
Feedback
FAQ
Register
Log In
Run results for:
createElement vs innerHTML for creating elements in DOM
Speed of inserting DOM elements by various methods
Go to the benchmark
Embed
Embed Benchmark Result
Run details:
User agent:
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/18.1 Safari/605.1.15
Browser:
Safari 18
Operating system:
Mac OS X 10.15.7
Device Platform:
Desktop
Date tested:
one year ago
Test name
Executions per second
createElement
801.9 Ops/sec
innerHTML
2.7 Ops/sec
innerHTML append
589.9 Ops/sec
HTML Preparation code:
<div id="container"></div>
Tests:
createElement
const container = document.getElementById('container'); container.innerHTML = ''; for (let i = 0; i < 1000; i++) { const div = document.createElement('div'); const p = document.createElement('d'); p.classList.add('font-bold'); p.textContent = 'Hello'+i+'!'; div.appendChild(p); container.appendChild(div); } /*cleanup*/ container.innerHTML = '';
innerHTML
const container = document.getElementById('container'); container.innerHTML = ''; for (let i = 0; i < 1000; i++) { container.innerHTML += '<div><p class="font-bold">Hello'+i+'!</p></div>'; } /*cleanup*/ container.innerHTML = '';
innerHTML append
const container = document.getElementById('container'); container.innerHTML = ''; for (let i = 0; i < 1000; i++) { container.append('<div><p class="font-bold">Hello'+i+'!</p></div>'); } /*cleanup*/ container.innerHTML = '';