J'essaie de rafraîchir mon Javascript. J'essaie de comprendre comment cette solution fonctionne complètement. Il additionne tous les tableaux, donc retourne [1, 4, 7], mais je veux vraiment comprendre chaque partie de celui-ci. Si quelqu'un souhaite aider, je vous en serais très reconnaissant, merci.
var array = [
[1],
[2, 1, 1],
[3, 4]
];
let m = array.map(function(item) {
return item.reduce(function(acc, curr) {
acc += curr;
return acc;
}, 0)
})
console.log(m)
1 réponse
Chaque sous-tableau du tableau est mappé à la somme de ses éléments, via la fonction Array.prototype.map()
. Array.prototype.reduce()
un moyen fonctionnel de réduire un tableau à une seule valeur (dans ce cas, la somme).
var array = [
[1],
[2, 1, 1],
[3, 4]
];
// map each sub-array in the array to a new value
let m = array.map(function(item) {
// for each element in the sub-array, add it to the accumulator (acc)
return item.reduce(function(acc, curr) {
acc += curr;
return acc;
}, 0) // initialize acc = 0
})
console.log(m)
Référence Array.prototype.map ()
Référence Array.prototype.reduce ()
De nouvelles questions
javascript
Pour des questions concernant la programmation dans ECMAScript (JavaScript / JS) et ses divers dialectes / implémentations (hors ActionScript). Veuillez inclure toutes les balises pertinentes dans votre question; par exemple, [node.js], [jquery], [json], etc.