You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: 1-js/05-data-types/05-array-methods/article.md
+9-10Lines changed: 9 additions & 10 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -124,7 +124,7 @@ arr.slice([start], [end])
124
124
125
125
Ritorna un nuovo array contente tutti gli elementi a partire da `"start"` fino ad `"end"` (`"end"` escluso). Sia `start` che `end` possono essere negativi; in tal caso si inizierà a contare dalla coda dell'array.
126
126
127
-
Funziona come `str.slice`, ma crea dei sotto-array piuttosto di sotto-stringhe.
127
+
Funziona come `str.slice`, ma crea dei sotto-array piuttosto che sotto-stringhe.
128
128
129
129
Ad esempio:
130
130
@@ -136,7 +136,7 @@ alert( arr.slice(1, 3) ); // e,s (copia da 1 a 3)
136
136
alert( arr.slice(-2) ); // s,t (copia da -2 fino alla fine)
137
137
```
138
138
139
-
Possiamo anche utilizzarlo senza argomenti: `arr.slice()` crea una copia di `arr`. Questo tipo di chiamata è spesso utilizzata per una copia con cui poter liberamente lavorare senza modificare l'array originale.
139
+
Possiamo anche utilizzarlo senza argomenti: `arr.slice()` crea una copia di `arr`. Questo tipo di chiamata è spesso utilizzata per creare una copia con cui poter liberamente lavorare senza modificare l'array originale.
140
140
141
141
### concat
142
142
@@ -300,15 +300,15 @@ let user = users.find(item => item.id == 1);
300
300
alert(user.name); // John
301
301
```
302
302
303
-
Gli array di oggetti sono molto comuno, quindi il metodo `find` risulta molto utile.
303
+
Gli array di oggetti sono molto comuni, quindi il metodo `find` risulta molto utile.
304
304
305
305
Da notare che nell'esempio noi forniamo a `find` un singolo argomento `item => item.id == 1`. Gli altri parametri di `find` sono raramente utilizzati.
306
306
307
307
Il metodo [arr.findIndex](mdn:js/Array/findIndex) fa essenzialmente la stessa cosa, ma ritorna l'indice in cui è stata trovata la corrispondenza piuttosto di ritornare l'oggetto stesso; se l'oggetto non viene trovato ritorna `-1`.
308
308
309
309
### filter
310
310
311
-
Il metodo `find` cerca un singola occorrenza dell'elemento, la prima, che passata a una funzione ritorna `true`.
311
+
Il metodo `find` cerca un singola occorrenza dell'elemento, la prima, e se trovata ritorna `true`.
312
312
313
313
Se vogliamo cercare più occorrenze, possiamo utilizzare [arr.filter(fn)](mdn:js/Array/filter).
````smart header="Le arrow functions sono le migliori"
451
-
Ricordate le [arrow functions](info:function-expressions-arrows#arrow-functions)? Possiamo utilizzarle per un più breve ordinamento:
451
+
Ricordate le [arrow functions](info:function-expressions-arrows#arrow-functions)? Possiamo utilizzarle per più conciso il codice di ordinamento:
452
452
453
453
```js
454
454
arr.sort( (a, b) => a - b );
@@ -490,7 +490,7 @@ Inoltre ritorna `arr` dopo averlo invertito.
490
490
491
491
### split e join
492
492
493
-
Vediamo una situazione realistica. Stiamo scrivendo un'applicazione di messaggistica, e l'utente inserisce una lista di destinatari: `John, Pete, Mary`. Per noi sarebbe più comodo avere un array di nomi piuttosto di una singola stringa. Come possiamo ottenerlo?
493
+
Vediamo una situazione reale. Stiamo scrivendo un'applicazione di messaggistica, e l'utente inserisce una lista di destinatari: `John, Pete, Mary`. Per noi sarebbe più comodo avere un array di nomi piuttosto di una singola stringa. Come possiamo ottenerlo?
494
494
495
495
Il metodo [str.split(delim)](mdn:js/String/split) fa esattamente questo. Divide la stringa in un array utilizzando il delimitatore `delim`.
La chiamata ad [arr.join("collante")](mdn:js/Array/join) fa esattamente l'inverso di `split`. Crea una stringa con gli elementi di `arr` incollati tra loro dal `collante`.
527
+
La chiamata ad [arr.join(separatore)](mdn:js/Array/join) fa esattamente l'inverso di `split`. Crea una stringa con gli elementi di `arr` incollati tra loro dal `separatore`.
Quasi tutti i metodi dedicati degli array che richiedono una funzione -- come `find`, `filter`, `map`, fatta eccezione per `sort`, accettano un parametro opzionale `thisArg`.
658
+
Quasi tutti i metodi degli array che richiedono una funzione -- come `find`, `filter`, `map`, fatta eccezione per `sort`, accettano un parametro opzionale `thisArg`.
659
659
660
660
Questo parametro non è stato spiegato nella sezione sopra, perché viene raramente utilizzato. Studiamolo per completezza.
661
661
@@ -701,7 +701,6 @@ alert(soldiers[1].age); // 23
701
701
702
702
Nella chiamata sopra, utilizziamo `user.younger` come filtro e forniamo `user` come contesto. Se non avessimo fornito il contesto, `users.filter(user.younger)` avrebbe chiamato `user.younger` come funzione a sé stante, con `this=undefined`. Che avrebbe provocato un errore.
703
703
704
-
A call to users.filter(army.canJoin, army) can be replaced with users.filter(user => army.canJoin(user)), that does the same. The latter is used more often, as it’s a bit easier to understand for most people.
705
704
706
705
Una chiamata a `user.filter(army.canJoin, army)` può essere sostituita da
707
706
`users.filter(user => army.canJoin(user))`, che fa lo stesso. L'ultima versione viene utilizzata più spesso e per molte persone è più semplice da capire.
0 commit comments