Filtre nulle à partir d'un tableau en javascript

J'ai une tâche à supprimer false, null, 0, "", indéfini, et NaN éléments d'un tableau donné. J'ai travaillé sur une solution qui supprime tout sauf les valeurs null. N'importe qui peut expliquer pourquoi? Voici le code :

function bouncer(arr) {
var notAllowed = ["",false,null,0,undefined,NaN];
  for (i = 0; i < arr.length; i++){
      for (j=0; j<notAllowed.length;j++) {
         arr = arr.filter(function(val) {
               return val !== notAllowed[j];
              });
  }
 }
return arr;
}

bouncer([1,"", null, NaN, 2, undefined,4,5,6]);
InformationsquelleAutor gshaineala | 2016-12-27