[Edit]
+
0
-
0

Node.js - escape HTML special characters

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
// Note: in this snippet you can find optimal solution to escape HTML special characters. const escapeHtml = (html) => { let result = ''; let escape = ''; let helper = 0; let index = 0; for (; index < html.length; ++index) { switch (html.charCodeAt(index)) { case 34: escape = '&#34;'; break; // " // &quot; case 38: escape = '&#38;'; break; // & // &amp; case 39: escape = '&#39;'; break; // ' case 60: escape = '&#60;'; break; // < // &lt; case 62: escape = '&#62;'; break; // > // &gt; default: continue; } if (helper < index) { result += html.substring(helper, index); } result += escape; helper = index + 1; } if (helper < index) { result += html.substring(helper, index); } return result; }; // Usage example: console.log(escapeHtml('<div class="message">Hi!</div>')); // &#60;div class=&#34;message&#34;&#62;Hi!&#60;/div&#62; // Output: // // &#60;div class=&#34;message&#34;&#62;Hi!&#60;/div&#62;
Reset