Lección 8 · 8 de 20
Arrays: listas de valores · JavaScript
Guarde listas en arrays de JavaScript: índices desde 0, length, cambiar elementos, recorrerlos con for y for...of, y arrays de arrays.

Un array es una lista ordenada de valores entre corchetes, separados por comas. fruits guarda cuatro cadenas y `length` dice cuántas hay.
Cada elemento tiene una posición, su índice, que empieza en 0: fruits[0] es el primero y fruits[fruits.length - 1] el último. Si pide una posición que no existe, como fruits[10], obtiene undefined, no un error.
Con el índice también se cambia un elemento: fruits[1] = "kiwi". Fíjese en que fruits es const y aun así se puede modificar: const impide asignar otro array a la variable, no cambiar lo que hay dentro.
Para recorrer un array hay dos formas. El for clásico usa el índice i de 0 a length - 1 y suma las temperaturas para sacar la media. `for...of` da directamente cada valor, sin índices, y es más claro cuando no hace falta la posición, como al contar los días de 22 grados o más.
Un array puede contener otros arrays: el tablero de tres en raya es una lista de tres filas, y board[1][1] es la casilla del centro (fila 1, columna 1).
Código · main.js
// An array is an ordered list inside [ ].const fruits = ["apple", "banana", "cherry", "mango"];console.log(fruits);console.log("How many:", fruits.length);// Positions (indexes) start at 0.console.log("First:", fruits[0], "| Last:", fruits[fruits.length - 1]);console.log("Position 10:", fruits[10]);// Change an element through its index.fruits[1] = "kiwi";console.log("After the change:", fruits);// An array of numbers: one week of temperatures.const temps = [18, 21, 19, 24, 26, 22, 17];let sum = 0;for (let i = 0; i < temps.length; i++) { sum += temps[i];}console.log("Average temperature:", (sum / temps.length).toFixed(1));// for...of goes through the values directly, without indexes.let warmDays = 0;for (const t of temps) { if (t >= 22) warmDays++;}console.log("Days at 22 or more:", warmDays);// An array of arrays: a noughts and crosses board.const board = [["X", "O", "X"], [" ", "X", "O"], ["O", " ", "X"]];console.log("Centre square:", board[1][1]);for (const row of board) console.log(row);Salida · node main.js
[ 'apple', 'banana', 'cherry', 'mango' ] How many: 4 First: apple | Last: mango Position 10: undefined After the change: [ 'apple', 'kiwi', 'cherry', 'mango' ] Average temperature: 21.0 Days at 22 or more: 3 Centre square: X [ 'X', 'O', 'X' ] [ ' ', 'X', 'O' ] [ 'O', ' ', 'X' ]
Para recordar
- Los índices empiezan en 0; el último es
length - 1. - Una posición que no existe da
undefined. - Un array
constse puede modificar, pero no reasignar. for...ofrecorre los valores sin índices.
Ejercicio
Añada un array con las notas de cinco exámenes y escriba la nota más alta, la más baja (recorriéndolo con for...of) y la media con un decimal.