我有一个任务是从给定的数组中删除false,null,0,"",undefined和NaN元素.我致力于解决除了null之外的所有解决方案.有谁能解释为什么?这是代码:
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]);
Run Code Online (Sandbox Code Playgroud)