Toggle navigation
MeasureThat
.net
Create a benchmark
Tools
Feedback
FAQ
Register
Log In
Run results for:
set: innerHTML vs outerHTML
Go to the benchmark
Embed
Embed Benchmark Result
Run details:
User agent:
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/135.0.0.0 Safari/537.36
Browser:
Chrome 135
Operating system:
Mac OS X 10.15.7
Device Platform:
Desktop
Date tested:
one year ago
innerHTML
2.4M/s
outerHTML
1.7M/s
View exact numbers
Test name
Executions per second
✓
innerHTML
2,381,220 Ops/sec
outerHTML
1,663,839 Ops/sec
HTML Preparation code:
<div id="parent"> <div id="child"></div> </div>
Script Preparation code:
/*your preparation JavaScript code goes here To execute async code during the script preparation, wrap it as function globalMeasureThatScriptPrepareFunction, example:*/ async function globalMeasureThatScriptPrepareFunction() { // This function is optional, feel free to remove it. // await someThing(); }
Tests:
outerHTML (document)
const el = document.getElementById("child"); el.outerHTML = `<div id="child"><p>TEST</p></div>`;
innerHTML (document)
const el = document.getElementById("child"); el.innerHTML = `<p>TEST</p>`;
outerHTML (DOM)
const template = document.createElement("template"); const el = document.createElement("div"); template.appendChild(el); el.outerHTML = `<div id="child"><p>TEST</p></div>`;
innerHTML (DOM)
const template = document.createElement("template"); const el = document.createElement("div"); template.appendChild(el); el.innerHTML = `<p>TEST</p>`;
innerHTML (template)
const template = document.createElement("template"); const el = document.createElement("div"); template.innerHTML = `<p>TEST</p>`; el.appendChild(template.content);