JavaScript básico - Utiliza recursión para crear una cuenta regresiva

Cuéntanos qué está pasando:
Describe tu problema en detalle aquí.

No entiendo porque en el ejemplo se agregan los valores con push() si la variable “countArray” no es un arreglo, el metodo push() es propio de los arreglos.

Tu código hasta el momento

// Cambia solo el código debajo de esta línea
function countdown(n){
  if(n < 1){
    return [];
  } else {
    return [].push(countdown(n-1));
  }
}
// Cambia solo el código encima de esta línea

Información de tu navegador:

El agente de usuario es: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:107.0) Gecko/20100101 Firefox/107.0

Desafío: JavaScript básico - Utiliza recursión para crear una cuenta regresiva

Enlaza al desafío:

1 Like

“countArray” si es un arreglo, aquí puedes ver sus valores

Su valor inicial es un array vacío, que se le asigna en esta parte
image

Si entendi bien, mientras la funcion se este llamandon a si misma la variable “countArray” no es un arreglo sino hasta cuando entra el caso base (que es cuando la funcion deja de llamarse a si misma) es cuando retorna un array vacio y es con el que va a empezar a trabajar para ir agregandole valores.

Digamos que lo que se retorna en el caso base de una funcion recursiva es el tipo de dato que necesita la funcion para ir manejando los resultados que va resolviendo en cada llamada a la funcion en el call stack comenzando de arriba hacia abajo (LIFO).
Lo comprendi bien?