retour au cours

createTextNode vs innerHTML vs textContent

importance: 5

Nous avons un élément DOM vide elem et une chaîne de caractères text.

Lesquelles de ces 3 commandes feront exactement la même chose ?

  1. elem.append(document.createTextNode(text))
  2. elem.innerHTML = text
  3. elem.textContent = text

Réponse : 1 et 3.

Les deux commandes ont pour résultat d’ajouter le texte “en tant que texte” dans elem.

Voici un exemple :

<div id="elem1"></div>
<div id="elem2"></div>
<div id="elem3"></div>
<script>
  let text = '<b>text</b>';

  elem1.append(document.createTextNode(text));
  elem2.innerHTML = text;
  elem3.textContent = text;
</script>