3.3 KiB
entities
Encode & decode HTML & XML entities with ease & speed.
How to…
…install entities
npm install entities
…use entities
const entities = require("entities");
//encoding
entities.escape("&"); // "&"
entities.encodeXML("&"); // "&"
entities.encodeHTML("&"); // "&"
//decoding
entities.decodeXML("asdf & ÿ ü '"); // "asdf & ÿ ü '"
entities.decodeHTML("asdf & ÿ ü '"); // "asdf & ÿ ü '"
Performance
This is how entities
compares to other libraries on a very basic benchmark
(see scripts/benchmark.ts
, for 10,000,000 iterations):
Library | decode perf |
encode perf |
escape perf |
Bundle size |
---|---|---|---|---|
entities | 1.418s | 6.786s | 2.196s | |
html-entities | 2.530s | 6.829s | 2.415s | |
he | 5.800s | 24.237s | 3.624s | |
parse-entities | 9.660s | N/A | N/A |
Acknowledgements
This libary wouldn't be possible without the work of these individuals. Thanks to
- @mathiasbynens for his explanations
about character encodings, and his library
he
, which was one of the inspirations forentities
- @inikulin for his work on optimized tries for
decoding HTML entities for the
parse5
project - @mdevils for taking on the challenge of
producing a quick entity library with his
html-entities
library.entities
would be quite a bit slower if there wasn't any competition. Right nowentities
is on top, but we'll see how long that lasts!
License: BSD-2-Clause
Security contact information
To report a security vulnerability, please use the Tidelift security contact. Tidelift will coordinate the fix and disclosure.
entities
for enterprise
Available as part of the Tidelift Subscription
The maintainers of entities
and thousands of other packages are working with
Tidelift to deliver commercial support and maintenance for the open source
dependencies you use to build your applications. Save time, reduce risk, and
improve code health, while paying the maintainers of the exact dependencies you
use.
Learn more.