我尝试使用isNaN(value)and!isNaN(value)但无法在不删除字符串的情况下删除给定代码中的 NaN 元素。(显然是因为字符串不是数字)。
function cleaner(arr) {
return = arr.filter(function f(value) {return (value !== false && value !== null && value !== 0 && value !== undefined)});
}
cleaner([7, "eight", false, null, 0, undefined, NaN, 9, ""]);
Run Code Online (Sandbox Code Playgroud)
上面的代码应该返回[7, "eight", 9, ""];