Qual é a maneira certa de decodificar uma string que tenha entidades HTML especiais?

Qual é a maneira certa de decodificar uma string que tenha entidades HTML especiais?
Enquanto trabalha com o HTML, é possível encontrar caracteres ou símbolos especiais que foram codificados usando entidades HTML. Essas entidades começam com um ampersa e “&”E encerrar com um semicolon“;", como "<"Que indica o símbolo"<”. É importante excluir elementos/entidades HTML especiais de uma string para verificar se a sequência final é segura para usar e não contém código ilegal que o navegador possa executar.

Esta posta.

Qual é a maneira certa de decodificar uma string que tenha entidades HTML especiais?

Para decodificar uma string que contém entidades HTML especiais, use os seguintes métodos:

  • Elemento "textarea"
  • Método “parsefromstring ()”

Método 1: Decode uma string que possui entidades HTML especiais usando o elemento "textarea"

Use o html “”Elemento para decodificar uma string que contém entidades HTML especiais. É preciso uma string com entidades HTML especiais usando o “Innerhtml" propriedade. O navegador decodifica automaticamente as entidades na textarea e fornece o texto simples simples. Para recuperar a corda decodificada, use o “valor" propriedade.

Exemplo

Crie uma variável “CodedString”Que armazena uma string contendo entidades HTML especiais:

const codedString = '
Bem -vindo ao Linuxhint!
';

Imprima a sequência codificada no console:

console.log ("string codificada:" + codedString);

Crie um elemento HTML “Textarea”Usando o“createElement ()”Método:

const textarea = documento.createElement ('textarea');

Passe a sequência codificada para a textarea usando o “Innerhtml" propriedade:

Textarea.inerhtml = codedString;

Agora, obtenha a string decodificada usando o “valor”Atributo da textarea e armazená -lo em uma variável“DecodedString”:

const decodedString = textarea.valor;

Por fim, exiba a sequência decodificada no console usando o “console.registro()”Método:

console.log ("string decodificada:" + decodedstring);

A saída indica que a string contendo entidades HTML especiais foi decodificada com sucesso:

A abordagem acima é simples e clara e é adequada para cenários simples. Se você tentar lidar com estruturas HTML complexas, ele falhará. Então, para isso, use o método "parsefromstring ()".

Método 2: Decode uma string que possui entidades HTML especiais usando o método “parsefromstring ()”

Outra maneira de decodificar uma string com entidades HTML especiais é a “parsefromstring ()”Método. É um método pré-construído do “Domparser”Objeto. Ajuda a analisar uma string xml ou html e depois criar um novo objeto de documento DOM a partir dele.

Exemplo

Primeiro, crie um novo objeto do “Domparser”Usando o“novoPalavra -chave:

const parser = new Domparser ();

Ligar para "parsefromstring ()”Método e passe os parâmetros“string codificada”Como uma estrutura complexa de HTML e a“ “texto/html”. Diz o método para tratar a sequência codificada como HTML. Use o "TextContent”Propriedade do elemento corporal para obter a string decodificada:

const decodedString = analisador.parsefromstring ('$ codedString ',' text/html ').corpo.TextContent;

Imprima a sequência decodificada no console:

console.log ("string decodificada:" + decodedstring);

Saída

Fornecemos todas as instruções essenciais relevantes para a decodificação de uma string com entidades HTML especiais.

Conclusão

Para decodificar uma string que contém entidades HTML especiais, utilize o elemento HTML “Textarea" ou o

““parsefromstring ()”Método do“Domparser”Objeto. A abordagem é adequada para cenários simples, enquanto o método parsefromstring () é uma abordagem mais robusta e segura que pode lidar com estruturas HTML complexas. Recomenda -se usar o método "parsefromstring ()" para decodificar uma string contendo entidades HTML. Esta posta.