No sé por qué mi función no se llama correctamente cada 100 milisegundos. Solo se llama una vez, cuando la página se carga/recarga. No tengo ideas de qué probar.
var unit = document.getElementsByClassName('unit'); var date = new Date(); function setTime() { hour.textContent = date.getHours(); unit[0].textContent = "h"; minute.textContent = date.getMinutes(); unit[1].textContent = "m"; console.log('boom'); } setInterval(setTime, 100); <h1 id="time"> <span id="hour"></span><!-- --><span class="unit"></span> <span id="minute"></span><!-- --><span class="unit"></span> </h1>