gpt4 book ai didi

javascript - 旨在从数组中删除 NaN 的代码,仍然返回 NaN JS

转载 作者:太空宇宙 更新时间:2023-11-04 15:40:02 25 4
gpt4 key购买 nike

我需要从数组中删除除 0 之外的所有空值(null、undefined、''、NaN、false)。例如:[0, false, [], undefined, {}, NaN, 'Kevin'] => [0, [], {}, 'Kevin'];

function removeBlank(array) {
array = array.filter(function (n) {
return (n !== undefined && n !== null && n !== false && n !== "" && isNaN()!= NaN); });
console.log( array );
}

但是这仍然返回 NaN。例如removeBlank([0, NaN, undefined, false, '', null, 'Kevin']); 返回 [0,NaN,“凯文”]

如何改进 isNaN()!= NaN) 以删除 NaN 而不删除字符串、零或其他数字?

最佳答案

isNaN()!= NaN 没有任何意义,isNaN是一个函数,它接受一个参数并检查(返回 truefalse)它是否是有效数字,您不会向它传递任何内容。

即使你使用正确,它也不会起作用,因为这样所有非数字的值都会被过滤掉。

我建议使用这个:

array = array.filter(function (n) {
return n || n === 0;
});

n 要么为真,要么为 0

关于javascript - 旨在从数组中删除 NaN 的代码,仍然返回 NaN JS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43962393/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com