La comparaison de Filtrage et de deux tableaux

J'ai essayé de mettre en œuvre une fonction lorsqu'il est donné avec deux tableaux,

matrice1'éléments est utilisé comme conditions pour filtrer les éléments en matrice2.

Par exemple:

array1= [apple, grapes, oranges]

array2= [potato, pears, grapes, berries, apples, oranges]

Après le repas dans une fonction, matrice2 devrait avoir des éléments en tant que tels:

filter_twoArrays(array1,array2)

array2= [grapes, apples, oranges]

J'ai essayé le code suivant, à l'aide de boucles et de tableau.splice(), mais le problème que je vois c'est que lorsque j'utilise la jonction de la méthode, il semble que l'on modifie les longueurs de matrice2 dans la boucle for:

function filter_twoArrays(filter,result){

  for(i=0; i< filter.length; i++){
    for(j=0; j< result.length; j++){
      if(filter[i] !== result[j]){
        result.splice(j,1)
      }
    }
  }

Toutes les entrées seront grandement appréciés sur les moyens de perfectionner la fonction de filtre

cheers!

En php, vous pouvez utiliser array_intersect, mais votre code semble un peu comme JS
double possible de la plus Simple de code pour le tableau intersection en javascript
Est l'ordre des éléments dans le résultat matrice2 important pour vous?

OriginalL'auteur Alejandro | 2015-05-22