Run details:
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/106.0.0.0 Safari/537.36
Chrome 106
Windows
Desktop
2 years ago
Test name Executions per second
DOMPurify 8849.2 Ops/sec
Sanitize HTML 62691.8 Ops/sec
js-xss 213656.0 Ops/sec
HTML Preparation code:
AخA
 
1
<script src="https://cdnjs.cloudflare.com/ajax/libs/sanitize-html/1.27.5/sanitize-html.min.js"></script>
2
<script src="https://cdnjs.cloudflare.com/ajax/libs/dompurify/2.2.7/purify.min.js"></script>
3
<script src="https://cdnjs.cloudflare.com/ajax/libs/js-xss/0.3.3/xss.min.js"></script>
Tests:
  • DOMPurify

     
    const testString = `
    <b>Welcome to safeland</b><br>
    <a href='javascript:alert(1)'>This is fun</a><br>
    <img src=x onerror=console.log(1)>
    `
    const result = DOMPurify.sanitize(testString)
  • Sanitize HTML

     
    const testString = `
    <b>Welcome to safeland</b><br>
    <a href='javascript:alert(1)'>This is fun</a><br>
    <img src=x onerror=console.log(1)>
    `
    const result = sanitizeHtml(testString)
  • js-xss

     
    const testString = `
    <b>Welcome to safeland</b><br>
    <a href='javascript:alert(1)'>This is fun</a><br>
    <img src=x onerror=console.log(1)>
    `
    const result = filterXSS(testString)