¿Cómo puedo usar setInterval o setTimeout y mostrar los resultados durante el conteo?

Estoy tratando de hacer una cuenta regresiva del temporizador de 5 segundos a cero antes de llamar a una función, y puedo hacerlo con éxito, pero aún no he podido mostrar el valor del temporizador mientras se realiza la cuenta atrás. En lugar de mostrar los valores, el<div></div> va de un espacio en blanco a "Número: 0". He usado ambossetTimeout ysetInterval Con el mismo resultado.

<script type="text/javascript">
    for (i = 5; i > 0; i--) {
        function countDown() {
            setInterval(function () {
                document.getElementById("displayDiv").innerHTML = "Number: " + i;
            }, 1000);
        }
    }
</script>

También traté de usar.value en lugar de.innerHTML sin ayuda.

<input type="button" value="Count" onclick="countDown()" />

<div id="displayDiv" />

Esto parece que debería ser realmente simple, pero me ha dejado perplejo. Cualquier ayuda es apreciada

Respuestas a la pregunta(2)

Su respuesta a la pregunta