Apparently, this is harder to find than I thought it would be. And it even is so simple…
Is there a function equivalent to PHP’s htmlspecialchars built into JavaScript? I know it’s fairly easy to implement that yourself, but using a built-in function, if available, is just nicer.
For those unfamiliar with PHP, htmlspecialchars translates stuff like <htmltag/> into <htmltag/>
I know that escape() and encodeURI() do not work this way.
There is a problem with your solution code–it will only escape the first occurrence of each special character. For example:
Here is code that works properly:
Update
The following code will produce identical results to the above, but it performs better, particularly on large blocks of text (thanks jbo5112).