![]() |
Gli array sono una delle strutture dati fondamentali in JavaScript. Offrono una vasta gamma di metodi utili per manipolare, cercare, trasformare e iterare sugli elementi. In questo articolo esploreremo tutti i principali metodi disponibili, accompagnati da esempi pratici.
Iterazione e accesso
values()
Restituisce un iteratore per i valori dell’array.
const arr = ['a', 'b', 'c'];
const iterator = arr.values();
for (let value of iterator) {
console.log(value); // 'a', 'b', 'c'
}
entries()
Restituisce un iteratore con coppie [indice, valore].
const arr = ['a', 'b', 'c'];
for (let [index, value] of arr.entries()) {
console.log(index, value); // 0 'a', 1 'b', 2 'c'
}
keys()
Restituisce un iteratore sugli indici dell’array.
const arr = ['a', 'b', 'c'];
for (let key of arr.keys()) {
console.log(key); // 0, 1, 2
}
forEach()
Esegue una funzione su ogni elemento dell’array. Non restituisce un nuovo array.
const arr = [1, 2, 3];
arr.forEach(x => {
console.log(x * 2); // 2, 4, 6
});
Manipolazione dell'ordine
reverse()
Inverte l’ordine degli elementi in-place.
const arr = [1, 2, 3];
arr.reverse(); // [3, 2, 1]
sort()
Ordina gli elementi come stringhe per default. Può accettare una funzione di confronto.
const arr = [10, 1, 20];
arr.sort(); // [1, 10, 20]
arr.sort((a, b) => b - a); // [20, 10, 1]
Accesso a valori specifici
at()
Accede a un elemento in posizione specifica, anche con indici negativi.
const arr = [10, 20, 30];
arr.at(1); // 20
arr.at(-1); // 30
Creazione di array
Array.of()
Crea un array dai suoi argomenti.
const arr = Array.of(1, 2, 3); // [1, 2, 3]
Array.from()
Crea un array da un oggetto iterabile o array-like.
const arr = Array.from('hello'); // ['h', 'e', 'l', 'l', 'o']
Riempimento e trasformazioni
fill()
Riempie l’array con un valore statico.
const arr = [1, 2, 3];
arr.fill(0); // [0, 0, 0]
join()
Converte l’array in stringa, separando gli elementi con un separatore.
const arr = ['a', 'b', 'c'];
arr.join('-'); // 'a-b-c'
toString()
Converte l’array in una stringa separata da virgole.
[1, 2, 3].toString(); // '1,2,3'
Aggiunta e rimozione di elementi
push()
Aggiunge uno o più elementi alla fine.
const arr = [1];
arr.push(2); // [1, 2]
pop()
Rimuove l’ultimo elemento.
const arr = [1, 2];
arr.pop(); // 2, arr = [1]
shift()
Rimuove il primo elemento.
const arr = [1, 2];
arr.shift(); // 1, arr = [2]
unshift()
Aggiunge elementi all’inizio.
const arr = [2];
arr.unshift(1); // [1, 2]
Copia e combinazione
copyWithin()
Copia una parte dell’array in un’altra posizione, modificando l’array originale.
const arr = [1, 2, 3, 4];
arr.copyWithin(1, 2); // [1, 3, 4, 4]
concat()
Unisce più array senza modificare gli originali.
[1, 2].concat([3, 4]); // [1, 2, 3, 4]
Ricerca
some()
Restituisce true se almeno un elemento soddisfa la condizione.
[1, 2, 3].some(x => x > 2); // true
every()
Restituisce true se tutti soddisfano la condizione.
[1, 2, 3].every(x => x > 0); // true
findIndex()
Restituisce l’indice del primo elemento che soddisfa la condizione.
[5, 12, 8].findIndex(x => x > 10); // 1
includes()
Controlla se un elemento esiste nell’array.
[1, 2, 3].includes(2); // true
lastIndexOf()
Restituisce l’ultima posizione di un elemento.
[1, 2, 3, 2].lastIndexOf(2); // 3
Estrazione e rimozione
splice()
Aggiunge o rimuove elementi modificando l’array.
const arr = [1, 2, 3];
arr.splice(1, 1); // [2], arr = [1, 3]
slice()
Copia una parte dell’array senza modificarlo.
const arr = [1, 2, 3];
arr.slice(1); // [2, 3]
Appiattimento
flat()
Appiattisce array annidati fino alla profondità specificata.
[1, [2, [3]]].flat(1); // [1, 2, [3]]
[1, [2, [3]]].flat(2); // [1, 2, 3]
flatMap()
Applica una funzione e appiattisce di un livello.
[1, 2].flatMap(x => [x, x * 2]); // [1, 2, 2, 4]
Verifica e identificazione
isArray()
Verifica se il valore è un array.
Array.isArray([1, 2]); // true
Filtraggio e trasformazioni
filter()
Restituisce un nuovo array con solo gli elementi che soddisfano la condizione.
[1, 2, 3].filter(x => x > 1); // [2, 3]
map()
Applica una funzione a ogni elemento, creando un nuovo array.
[1, 2, 3].map(x => x * 2); // [2, 4, 6]
Riduzioni
reduce()
Riduce l’array a un singolo valore, applicando una funzione.
[1, 2, 3].reduce((sum, x) => sum + x, 0); // 6
reduceRight()
Come reduce, ma da destra verso sinistra.
['a', 'b', 'c'].reduceRight((acc, val) => acc + val); // 'cba'
Prima di concludere, la proprietà principale degli array
length
Restituisce il numero di elementi presenti nell’array. È una proprietà, non un metodo, quindi non richiede parentesi.
const arr = [1, 2, 3];
console.log(arr.length); // 3
Conclusione
I metodi degli array in JavaScript coprono ogni aspetto della gestione dei dati:
- creazione
- modifica
- iterazione
- trasformazione
- ricerca
Saperli padroneggiare è essenziale per scrivere codice più leggibile, efficiente e idiomatico.
Follow me #techelopment
Official site: www.techelopment.it
facebook: Techelopment
instagram: @techelopment
X: techelopment
Bluesky: @techelopment
telegram: @techelopment_channel
whatsapp: Techelopment
youtube: @techelopment
