JavaScript对Number(undefined)做了什么?

时间:2015-06-29 13:37:19

标签: javascript types undefined v8 nan

我最近想过定义一个函数,当我发现时,复制isNaN的功能,而Number(undefined)等于NaN</code>, but if you do数字(未定义)=== NaN you get false `。

我甚至试过(typeof Number(undefined)) === (typeof NaN),返回true

JavaScript在这做什么?

1 个答案:

答案 0 :(得分:3)

常量NaN永远不会等于任何内容,包括NaNtypeof NaN的值为&#34;数字&#34;,因为NaN是一个数字常量。

Number(undefined)的值为NaN。您可以使用isNaN()来验证,或只是:

var x = Number(undefined);
if (x !== x) alert("It's NaN!");