J'ai un tableau imbriqué comme ci-dessous: Je veux obtenir le nombre de toutes les valeurs à l'intérieur de la colonne "Nombre" de la matrice imbriquée. P> P> Le retour Le résultat devrait être comme: 61 (13 + 9 + 11 + 8 + 20)
Y a-t-il un moyen de le faire dans JavaScript / React? P> P>
3 Réponses :
Vous pouvez utiliser p> réduire () code> pour trouver la somme comme ci-dessous le code. Avant de faire cela, assurez-vous de supprimer le premier dans votre tableau, car c'est une chaîne. J'utilise shift () code> pour le supprimer. Au lieu de shift () code>, vous pouvez utiliser épissure () code>. var a = [
["States", "Count"],
["DISABLE", 13],
["DENY", 9],
["FAULTY", 11],
["OFF", 8],
["ON", 20]
];
a.shift(); // removing first element
var total = a.reduce((sum, item) => sum+=item[1], 0);
console.log(total);
Je suppose que OP ne se soucie pas de la mutation de la matrice d'origine, mais ce sera mieux si vous pouviez calculer le total sans muter le tableau. Quelque chose comme a.slice (1) .Reduce ((somme, élément) => somme + = élément [1], 0); code> pour copier tout sauf tout sauf le reste.
Si vous pouvez modifier la structure de données, vous voulez probablement avoir quelque chose comme: si vous ne pouvez pas, cela devrait fonctionner: P> const count = array.reduce((acc, cur) => acc += cur[1], 0);
Plus simple de simplement retourner la nouvelle valeur de somme calculée const compte = array.reduce ((ACC, CUR) => ACC + CUR [1], 0); CODE>
const countArr = [
["DISABLE", 13],
["DENY", 9],
["FAULTY", 11],
["OFF", 8],
["ON", 20]
]
const sum = countArr.reduce((firstParam, secondParam) => {
const [name, count ] = secondParam
return firstParam + count
}, 0) // 61
remove your first element in array then try this
S'il vous plaît visitez le centre d'aide , prenez le tour à Voir quoi et Comment demander . Faites des recherches, recherchez des sujets connexes sur vous? Si vous êtes coincé, postez un exemple de reproductible minimal de votre tentative, notant l'entrée et la sortie attendue à l'aide du
[<>] code> Editeur d'extrait.RTM
Ok ce que vous avez essayé et ce que vous avez mal tourné. Pouvez-vous nous montrer votre code. Veuillez également cliquer ici pour lire la suite Comment poser une question: Stackoverflow.com/help/how-to-ask - Il y a de fortes chances que votre question soit votée à la fois s'il n'y a pas de code ni d'informations supplémentaires du tout.