JavaScript básico - Anida bucles "for"

Cuéntanos qué está pasando:
No entiendo el funcionamiento de este bucle. como es posible que arr[i] sea “0” dos veces si supuestamente despues de la primer vuelta se incrementa +1.
Me refiero a que para que salga el “1”, tiene que ser “arr[0][0]”, pero para que salga el “2”, debe ser arr[0][1]. Y mi pregunta es como sale el “arr[0]” de vuelta al principio?, si se suma 1 en la primer vuelta con el (i++).
(No es el desafio, es la explicación inicial de la izquierda)
Tu código hasta el momento

const arr = [
  [1, 2], [3, 4], [5, 6]
];

for (let i = 0; i < arr.length; i++) {
  for (let j = 0; j < arr[i].length; j++) {
    console.log(arr[i][j]);
  }
}

Información de tu navegador:

El agente de usuario es: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/106.0.0.0 Safari/537.36

Desafío: JavaScript básico - Anida bucles “for”

Enlaza al desafío:

Hola Axel! El funcionamiento es el siguiente:

Entras al primer for y se ejecuta su primer bucle, donde i = 0.
¿En su primer bucle que se ejecuta? Otro for. Entramos a ejecutar todo un segundo bloque for para el primer bucle con i = 0. Es decir, i se mantiene siendo 0 hasta que termina de ejecutarse el for anidado dentro del primero, una vez termina de ejecutarse el for con j, se incrementa la i en caso de que se cumpla la condicion.

Espero se entienda.

Si se entedio, muchisimas gracias :slight_smile: