J'ai un tableau multidimensionnel comme celui-ci:
et j'ai besoin Pour n'utiliser qu'une fonction de filtrage pour filtrer cette matrice. Je dois filtrer le tableau et créer un nouveau tableau à partir des matrices internes actuelles contenant le numéro 3: p> mon code ne fonctionne pas. En fait, cela fonctionne, mais je ne vois aucun résultat. P> Le résultat attendu est comme celui-ci: p> Tout ce que j'ai trouvé sont des méthodes de filtrage avec des objets. P> P> Soit Arr = [[1,2,3], [3,4,6], [4,5,7], [8,9,3]]; code>
Newarr = [[[[1,2,3], [ 3,4,6], [8,9,3]]; code> p>
3 Réponses :
Vous avez besoin d'un style différent du rappel.
p>
const contains = v => a => a.includes(v); var array = [[1, 2, 3], [3, 4, 6], [4, 5, 7], [8, 9, 3]], result = array.filter(contains(3)); console.log(result);
En supposant que c'est une matrice 2 dimensions. Utilisez Indexof pour vérifier les tableaux à l'intérieur:
myArr.filter((a)=> { return a.indexOf(3)>=0})
cont result = arr.filter(a => a.includes(3));
S'il vous plaît ne postez pas uniquement de code comme réponse, mais incluez une explication de votre code et de la manière dont il résout le problème de la question. Les réponses avec une explication sont généralement de meilleure qualité et sont plus susceptibles d'attirer des upvotes.