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 (iPhone; CPU iPhone OS 18_3_2 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) CriOS/135.0.7049.83 Mobile/15E148 Safari/604.1
Browser:
Chrome Mobile iOS 135
Operating system:
iOS 18.3.2
Device Platform:
Mobile
Date tested:
one year ago
Test name
Executions per second
outerHTML (document)
722737.8 Ops/sec
innerHTML (document)
700311.9 Ops/sec
outerHTML (DOM)
698422.0 Ops/sec
innerHTML (DOM)
1264015.8 Ops/sec
innerHTML (template)
856794.8 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);