HTML-энтити: кодер и декодер
Спецсимволы ↔ HTML-сущности. Кодирование экранирует <, >, &, кавычки; декодирование понимает именованные, десятичные и hex-сущности. Всё в браузере.
Зачем это нужно
Чтобы показать на странице символы <, > или & как текст, а не как разметку, их заменяют на HTML-сущности. Это защищает вёрстку от поломки и помогает предотвратить XSS при выводе пользовательского текста. Декодер делает обратное — превращает сущности вроде ' обратно в символы.