escapeHtml()
Escapa caracteres especiais HTML em uma string.
import { escapeHtml } from "@unifast/core";Assinatura
function escapeHtml(str: string): stringParâmetros
str
| Propriedade | Tipo | Padrão | Descrição |
|---|---|---|---|
str | string | — | A string contendo caracteres a serem escapados |
Retorna
string — A string de entrada com &, <, > e " substituídos por seus equivalentes em entidades HTML.
Uso
import { escapeHtml } from "@unifast/core";
const safe = escapeHtml('<script>alert("xss")</script>');
console.log(safe);
// <script>alert("xss")</script>Exemplos
Escape básico
import { escapeHtml } from "@unifast/core";
console.log(escapeHtml("Tom & Jerry"));
// Tom & Jerry
console.log(escapeHtml('class="main"'));
// class="main"
console.log(escapeHtml("1 < 2 > 0"));
// 1 < 2 > 0Escape de conteúdo gerado pelo usuário
import { escapeHtml } from "@unifast/core";
const userComment = '<img src=x onerror="alert(1)">';
const html = `<div class="comment"></div>`;
console.log(html);
// <div class="comment"><img src=x onerror="alert(1)"></div>Construindo atributos HTML seguros
import { escapeHtml } from "@unifast/core";
const title = 'He said "hello" & waved';
const html = `<span title="">Hover me</span>`;
console.log(html);
// <span title="He said "hello" & waved">Hover me</span>Comportamento
&é substituído por&<é substituído por<>é substituído por>"é substituído por"Todos os outros caracteres são deixados inalterados