Javascript 为什么isFinite(未定义)!=isFinite(空)?
为什么在javascript中,undefined的值被认为是有限的,而null不是有限的 这是一个非常基本的问题,它阻碍了我的谷歌搜索(太多噪音)Javascript 为什么isFinite(未定义)!=isFinite(空)?,javascript,null,undefined,Javascript,Null,Undefined,为什么在javascript中,undefined的值被认为是有限的,而null不是有限的 这是一个非常基本的问题,它阻碍了我的谷歌搜索(太多噪音) 我不理解,因为我希望以相同的方式处理null和undefined。这是因为Number(null)==0 这是因为数字(null)==0 isFinite(数字) 如果参数强制为NaN,则返回false+∞, 或−∞, 否则返回true isFinite使用Number() Number(undefined); //== NaN Number(n
我不理解,因为我希望以相同的方式处理null和undefined。这是因为
Number(null)==0
这是因为
数字(null)==0
isFinite(数字)
如果参数强制为NaN,则返回false+∞, 或−∞, 否则返回true
isFinite
使用Number()
Number(undefined); //== NaN
Number(null); //== 0
这就是为什么undefined为false,而对于isFinite,null为true的原因
如果您尝试:
isFinite(!undefined); // true
因为undefined是NaN,在对它求反时,它转换为1,它是有限的
isFinite(数字)
如果参数强制为NaN,则返回false+∞, 或−∞, 否则返回true
isFinite
使用Number()
Number(undefined); //== NaN
Number(null); //== 0
这就是为什么undefined为false,而对于isFinite,null为true的原因
如果您尝试:
isFinite(!undefined); // true
因为undefined是NaN,在否定它时,它转换为1,这是有限的。先生,您很快。非常感谢你满足了我的好奇心!先生,你很快。非常感谢你满足了我的好奇心!