parseFloat("NaN")
Run Code Online (Sandbox Code Playgroud)
返回"NaN",但是
parseFloat("NaN") == "NaN"
Run Code Online (Sandbox Code Playgroud)
返回false.现在,这确实是一件好事,它确实会返回错误,但我不明白这是怎么回事.JavaScript创建者是否只是将此作为特例?因为否则我无法理解这是如何返回false的.
为什么会这样:
1 === 1;// true
0 === -0;// true
1/0 === 1/-0;// false
Run Code Online (Sandbox Code Playgroud)
原因:
1/0=Infinite;
1/-0=-Infinite;
Run Code Online (Sandbox Code Playgroud)
问题:
为什么 1/0 或 1/-0 不是Undefined或NaN?
它不可能是 Infinity 或 -Infinity,因为 0 等于 -0,所以 1/0 等于 1/-0 我应该说,但为什么不是呢?以及为什么它不是“未定义”(我的计算器所说的)或“NaN”。