Módulo 4 · Control de Flujo II: Bucles

Qué es un array

Un array es una lista ordenada de valores accesibles por posición. Qué es el índice, por qué empieza en 0 y qué significa length, con ejemplos cortos.

Definición rápida

Un array es una estructura de datos que guarda varios valores en orden, cada uno accesible por su posición o índice, empezando en cero.

Un array es una lista ordenada de valores guardada en una sola variable. En lugar de declarar nota1, nota2 y nota3, declaras notas y accedes a cada valor por su posición. Es la primera estructura de datos que se aprende y la que aparece en cualquier programa que maneje más de dos datos.

Crear y acceder

const notas = [7, 8, 9, 6];

notas[0];                 // 7   ← primer elemento
notas[3];                 // 6   ← cuarto elemento
notas.length;             // 4   ← cuántos hay
notas[notas.length - 1];  // 6   ← último elemento

Dos ideas que hay que interiorizar el primer día:

  1. El primer índice es 0. Con cuatro elementos, los índices válidos son 0, 1, 2 y 3.
  2. length es la cantidad, no el último índice. El último índice siempre es length - 1.

Acceder fuera de rango no lanza error: devuelve undefined. El fallo aparece más tarde, al operar con ese undefined, normalmente en forma de NaN.

Un array puede guardar cualquier cosa

const nombres = ["Ana", "Luis"];
const mezcla = [1, "dos", true];
const alumnos = [{ nombre: "Ana" }, { nombre: "Luis" }];   // lista de fichas

Ese último caso —una lista de objetos— es la forma en que llegan los datos reales: productos, usuarios, pedidos.

Añadir y quitar

const notas = [7, 8];

notas.push(9);   // añade al final    → [7, 8, 9]
notas.pop();     // quita el último   → [7, 8]
notas[0] = 10;   // reemplaza         → [10, 8]

Recorrer un array

Es la operación que más vas a repetir, y se hace con un bucle:

const notas = [7, 8, 9];

for (const nota of notas) {
  console.log(nota);
}

Cuando necesitas la posición, se usa el for clásico con la condición i < notas.length (nunca <=, o la última vuelta accede a una posición que no existe).

Errores típicos

  • Confundir length con el último índice.
  • Recorrer hasta length inclusive y encontrarse un undefined.
  • Creer que asignar copia. const b = a; no copia el array: las dos variables apuntan al mismo dato y modificar una afecta a la otra. Para copiar: [...a].
  • Comparar arrays con ===. Compara identidad, no contenido.

Dónde se practica

La definición es esta; el trabajo real está en recorrer listas para calcular totales, filtrar, buscar y transformar sin salirte de rango ni modificar lo que no debías. Eso es el módulo 4 del curso, con ejercicios que se corrigen solos y prueban también el array vacío y el de un solo elemento, que es donde fallan los recorridos mal planteados. Consulta el temario.

Preguntas frecuentes

¿Por qué los arrays empiezan en 0?

Porque el índice indica el desplazamiento respecto al inicio: el primer elemento está a cero posiciones del comienzo. Es una convención que comparten casi todos los lenguajes.

¿Cuál es la diferencia entre array y objeto?

El array guarda elementos en orden y se accede por número de posición; el objeto guarda propiedades con nombre. Usa array para listas de cosas equivalentes y objeto para las características de una sola cosa.

¿Puedo modificar un array declarado con const?

Sí. const impide reasignar la variable, no cambiar el contenido: puedes añadir y quitar elementos, pero no asignarle otro array distinto.