Tag nel commento
Cosa mostrerà questo codice?
<script>
let body = document.body;
body.innerHTML = "<!--" + body.tagName + "-->";
alert( body.firstChild.data ); // cosa c'è qui?
</script>
Risposta: BODY
.
<script>
let body = document.body;
body.innerHTML = "<!--" + body.tagName + "-->";
alert( body.firstChild.data ); // BODY
</script>
Vediamo cosa succede passo dopo passo:
- Il contenuto di
<body>
è rimpiazzato con il commento. Il commento è<!--BODY-->
, poichébody.tagName == "BODY"
. Abbiamo detto che,tagName
è sempre maiuscolo in modalità HTML. - Il commento è ora l’unico nodo figlio, perciò è il risultato di
body.firstChild
. - La proprietà
data
del commento è il suo contenuto (ovvero ciò che è dentro i tag di apertura e chiusura<!--...-->
):"BODY"
.