I would like to remove all falsy values from an array. Falsy values in JavaScript are false, null, 0, \"\", undefined, and NaN.
You use isNaN()
in wrong way. It should be something like following:
function bouncer(arr) {
return arr.filter(function (n) {
return n !== undefined && n !== null && n !== false && n !== 0 && n !== "" && !isNaN(n);
});
}
Also you can rewrite it:
function bouncer( arr ){
return arr.filter( function( value ){
return value;
});
}