Toggle navigation
MeasureThat.net
Create a benchmark
Tools
Feedback
FAQ
Register
Log In
"decodeHTMLEntities" vs DOM Parser
(version: 1)
This benchmark compares the "decodeHTMLEntities" function proposed by https://stackoverflow.com/questions/5796718/html-entity-decode and the solution via DOMParser.
Comparing performance of:
CreateElement_div vs DOMParser
Created:
one year ago
by:
Guest
Jump to the latest result
Script Preparation code:
var testString = '<body><script>alert(1);</script foo="bar">' + Array(100001).join('<div>x</div>') + '</body>';
Tests:
CreateElement_div
function test_innerHTML() { var element = document.createElement('div'); function decodeHTMLEntities(str) { if (str && typeof str === 'string') { // strip script/html tags str = str.replace(/<script[^>]*>([\S\s]*?)<\/script>/gmi, ''); str = str.replace(/<\/?\w(?:[^"'>]|"[^"]*"|'[^']*')*>/gmi, ''); element.innerHTML = str; str = element.textContent; element.textContent = ''; } return str; } return decodeHTMLEntities(testString); }
DOMParser
function test_DOMParser() { return (new DOMParser).parseFromString(testString, 'text/html').documentElement.innerText; }
Rendered benchmark preparation results:
Suite status:
<idle, ready to run>
Run tests (2)
Previous results
Fork
Test case name
Result
CreateElement_div
DOMParser
Fastest:
N/A
Slowest:
N/A
Latest run results:
Run details:
(Test run date:
one year ago
)
User agent:
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36
Browser/OS:
Chrome 133 on Windows
View result in a separate tab
Embed
Embed Benchmark Result
Test name
Executions per second
CreateElement_div
142890528.0 Ops/sec
DOMParser
157377296.0 Ops/sec
Related benchmarks:
ddddkkk
strip html v2
insertAdjacentHTML+innerText vs escape+insertAdjacentHTML
insertAdjacentHTML+textContent vs escape+insertAdjacentHTML
insertAdjacentHTML+textContent vs escape+Improved
CreateElement vs DOM Parser (v2)
HTML Escape textContent vs replace
Escape HTML regex vs replace vs textNode vs Option 4
Sanitize
Comments
Confirm delete:
Do you really want to delete benchmark?