@cjser/escape-goat
v4.0.0-cjser.2
Published
Escape a string for use in HTML or the inverse
Maintainers
Readme
Escape a string for use in HTML or the inverse
Install
$ npm install escape-goatUsage
import {htmlEscape, htmlUnescape} from 'escape-goat';
htmlEscape('๐ฆ & ๐');
//=> '๐ฆ & ๐'
htmlUnescape('๐ฆ & ๐');
//=> '๐ฆ & ๐'
htmlEscape('Hello <em>World</em>');
//=> 'Hello <em>World</em>'
const url = 'https://sindresorhus.com?x="๐ฆ"';
htmlEscape`<a href="${url}">Unicorn</a>`;
//=> '<a href="https://sindresorhus.com?x="๐ฆ"">Unicorn</a>'
const escapedUrl = 'https://sindresorhus.com?x="๐ฆ"';
htmlUnescape`URL from HTML: ${escapedUrl}`;
//=> 'URL from HTML: https://sindresorhus.com?x="๐ฆ"'API
htmlEscape(string)
Escapes the following characters in the given string argument: & < > " '
The function also works as a tagged template literal that escapes interpolated values.
htmlUnescape(htmlString)
Unescapes the following HTML entities in the given htmlString argument: & < > " '
The function also works as a tagged template literal that unescapes interpolated values.
Tip
Ensure you always quote your HTML attributes to prevent possible XSS.
FAQ
Why yet another HTML escaping package?
I couldn't find one I liked that was tiny, well-tested, and had both escape and unescape methods.
cjser
This package is a CommonJS-compatible build generated by cjser for projects that still need require() support. The source version matches the original npm package version, with a cjser prerelease suffix for this generated build.
Original repository: https://github.com/sindresorhus/escape-goat
