Diciamo che ho:Loop attraverso matrice di valori con Arrow funzione
var someValues = [1, 'abc', 3, 'sss'];
Come posso utilizzare una funzione freccia per scorrere tutti e eseguire un'operazione su ogni valore?
Diciamo che ho:Loop attraverso matrice di valori con Arrow funzione
var someValues = [1, 'abc', 3, 'sss'];
Come posso utilizzare una funzione freccia per scorrere tutti e eseguire un'operazione su ogni valore?
In breve:
someValues.forEach((element) => {
console.log(element);
});
Se vi preoccupate per indice, quindi secondo parametro può essere passato per ricevere l'indice dell'elemento corrente:
someValues.forEach((element, index) => {
console.log(`Current index: ${index}`);
console.log(element);
});
fare riferimento qui per sapere di più su Array di ES6: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array
C'è un piccolo svantaggio su 'forEach': non è possibile uscire da questo ciclo usando un'istruzione' break' o restituire dalla funzione di inclusione usando un'istruzione 'return'. Maggiori informazioni su questo [qui] (https://hacks.mozilla.org/2015/04/es6-in-depth-iterators-and-the-for-ofop/) – sonlexqt
Una dichiarazione può essere scritta come tale:
someValues.forEach(x => console.log(x));
o più istruzioni possono essere racchiuse in {}
come questo:
someValues.forEach(x => { let a = 2 + x; console.log(a); });
grazie. C'è un modo per specificare l'array all'interno dell'espressione in qualche modo troppo quindi non avrei bisogno di creare un array prima e una riga di codice in meno? – PositiveGuy
sì, se l'array si trova in una variabile: 'arr.forOach (x => console.log (arr))' stampa l'intero array tante volte quante sono gli elementi. Non funziona con '[1, 2] .for Ogni altro ...' Non puoi usare 'this'; si riferisce al "questo" dell'ambiente di chiamata – ronasta
Impossibile avete appena guardato in su? La [documentazione MDN] (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/Arrow_functions) è completa con un sacco di esempi ... – Emissary
maledetta quella pagina. Sì, l'ho cercato grazie – PositiveGuy
Non c'è motivo di utilizzare una funzione freccia. Se si desidera eseguire il ciclo di un array, utilizzare un ciclo 'for of'! – Bergi