chore(i18n,curriculum): update translations (#42620)
This commit is contained in:
@ -10,7 +10,7 @@ dashedName: use-destructuring-assignment-to-assign-variables-from-arrays
|
||||
|
||||
ES6 rende la destrutturazione degli array facile come quella degli oggetti.
|
||||
|
||||
Una differenza fondamentale tra l'operatore di diffusione e la destrutturazione dell'array è che l'operatore di diffusione spacchetta tutti i contenuti di un'array in una lista separata da virgole. Di conseguenza, non è possibile selezionare o scegliere quali elementi si desidera assegnare a delle variabili.
|
||||
Una differenza fondamentale tra l'operatore di propagazione e la destrutturazione dell'array è che l'operatore di diffusione spacchetta tutti i contenuti di un'array in una lista separata da virgole. Di conseguenza, non è possibile selezionare o scegliere quali elementi si desidera assegnare a delle variabili.
|
||||
|
||||
La destrutturazione di un array ci permette di fare esattamente questo:
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
---
|
||||
id: 587d7b89367417b2b2512b48
|
||||
title: Usare l'operatore di espansione per analizzare gli array in-place
|
||||
title: Usare l'operatore di propagazione per analizzare gli array in-place
|
||||
challengeType: 1
|
||||
forumTopicId: 301222
|
||||
dashedName: use-the-spread-operator-to-evaluate-arrays-in-place
|
||||
@ -8,7 +8,7 @@ dashedName: use-the-spread-operator-to-evaluate-arrays-in-place
|
||||
|
||||
# --description--
|
||||
|
||||
ES6 introduce l'<dfn>operatore di espansione</dfn>, che ci permette di espandere array ed altre espressioni in-place dove sono attesi più parametri o elementi.
|
||||
ES6 introduce l'<dfn>operatore di propagazione</dfn>, che ci permette di espandere array ed altre espressioni in posizioni dove sono attesi più parametri o elementi.
|
||||
|
||||
Il codice ES5 qui sotto utilizza `apply()` per calcolare il valore massimo in un array:
|
||||
|
||||
@ -19,7 +19,7 @@ var maximus = Math.max.apply(null, arr);
|
||||
|
||||
`maximus` avrà un valore di `89`.
|
||||
|
||||
Abbiamo dovuto utilizzare `Math.max.apply(null, arr)` perché `Math.max(arr)` restituisce `NaN`. `Math.max()` si aspetta argomenti separati da virgole, ma non un array. L'operatore di espansione rende questa sintassi molto migliore da leggere e mantenere.
|
||||
Abbiamo dovuto utilizzare `Math.max.apply(null, arr)` perché `Math.max(arr)` restituisce `NaN`. `Math.max()` si aspetta argomenti separati da virgole, ma non un array. L'operatore di propagazione rende questa sintassi molto migliore da leggere e mantenere.
|
||||
|
||||
```js
|
||||
const arr = [6, 89, 3, 45];
|
||||
@ -28,7 +28,7 @@ const maximus = Math.max(...arr);
|
||||
|
||||
`maximus` avrà un valore di `89`.
|
||||
|
||||
`...arr` restituisce un array spacchettato. In altre parole, *espande* l'array. Tuttavia, l'operatore di espansione funziona solo sul posto, come argomento di una funzione o in un array letterale (definito usando le parentesi quadre). Il seguente codice non funzionerà:
|
||||
`...arr` restituisce un array spacchettato. In altre parole, *propaga* l'array. Tuttavia, l'operatore di propagazione funziona solo sul posto, come argomento di una funzione o in un array letterale (definito usando le parentesi quadre). Il seguente codice non funzionerà:
|
||||
|
||||
```js
|
||||
const spreaded = ...arr;
|
||||
@ -36,7 +36,7 @@ const spreaded = ...arr;
|
||||
|
||||
# --instructions--
|
||||
|
||||
Copia tutti i contenuti di `arr1` in un altro array `arr2` usando l'operatore di espansione.
|
||||
Copia tutti i contenuti di `arr1` in un altro array `arr2` usando l'operatore di propagazione.
|
||||
|
||||
# --hints--
|
||||
|
||||
@ -46,7 +46,7 @@ Copia tutti i contenuti di `arr1` in un altro array `arr2` usando l'operatore di
|
||||
assert(arr2.every((v, i) => v === arr1[i]) && arr2.length);
|
||||
```
|
||||
|
||||
L'operatore di espansione `...` dovrebbe essere usato per duplicare `arr1`.
|
||||
L'operatore di propagazione `...` dovrebbe essere usato per duplicare `arr1`.
|
||||
|
||||
```js
|
||||
assert(code.match(/Array\(\s*\.\.\.arr1\s*\)|\[\s*\.\.\.arr1\s*\]/));
|
||||
|
Reference in New Issue
Block a user