0
votes

Comment filtrer une matrice multidimensionnelle simple avec des nombres seulement

J'ai un tableau multidimensionnel comme celui-ci: Soit Arr = [[1,2,3], [3,4,6], [4,5,7], [8,9,3]];

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: xxx

mon code ne fonctionne pas. En fait, cela fonctionne, mais je ne vois aucun résultat.

Le résultat attendu est comme celui-ci:

Newarr = [[[[1,2,3], [ 3,4,6], [8,9,3]];

Tout ce que j'ai trouvé sont des méthodes de filtrage avec des objets.


0 commentaires

3 Réponses :


3
votes

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);


0 commentaires

1
votes

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})


0 commentaires

0
votes
cont result = arr.filter(a => a.includes(3));

1 commentaires

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.