Toggle navigation
MeasureThat.net
Create a benchmark
Tools
Feedback
FAQ
Register
Log In
Run results for:
shadow DOM vs light DOM
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/119.0.0.0 Safari/537.36
Browser:
Chrome 119
Operating system:
Mac OS X 10.15.7
Device Platform:
Desktop
Date tested:
2 years ago
Test name
Executions per second
light DOM
77291.7 Ops/sec
shadow DOM
50659.6 Ops/sec
HTML Preparation code:
<template id="tpl"> <div> <h3>title example</h3> <p>example para with an <a href="#"><b>example link</b></a></p> </div> </template> <div id="container"></div>
Script Preparation code:
const tplNode = document.getElementById('tpl').content; const container = document.getElementById('tpl'); class MyEl extends HTMLElement { connectedCallback() { this.appendChild(tplNode.cloneNode(true)) } } customElements.define("my-el-lgt", MyEl); class MyElWithShadowDOM extends HTMLElement { connectedCallback() { this.attachShadow({mode: 'open'}); this.shadowRoot.appendChild(tplNode.cloneNode(true)) } } customElements.define("my-el-shd", MyElWithShadowDOM);
Tests:
light DOM
container.innerHTML = ` <my-el-lgt></my-el-lgt> `
shadow DOM
container.innerHTML = ` <my-el-shd></my-el-shd> `