torna alle lezioni

createTextNode vs innerHTML vs textContent

importanza: 5

Abbiamo elem, un elemento DOM vuoto, e una stringatext.

Quali di questi 3 comandi fanno esattamente la stessa cosa?

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

Risposta: 1 e 3.

Entrambi i commandi risultano nell’aggiunta di text “come testo” dentro a elem. Ecco un esempio:

<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>