isNaN的執行過程

2021-08-19 13:17:26 字數 576 閱讀 6269

乙個很簡單的問題:

isnan(null),返回值是true還是false?

我的第一反應是true,然而事實卻是false。

開始很不理解,於是去查了isnan的原理,原來是isnan在執行時,首先將引數執行了number()操作,然後再去判斷操作後的結果是否是nan。當我們執行number(null)時,返回值是0,0是數字,所以isnan(0)返回值是false,那麼isnan(null)返回false也就不足為奇了。

下面列舉一下幾個特殊值的isnan執行結果,有沒有超乎你的想象呢?

isnan('');    //false

isnan(undefined); //true

isnan(); //false

isnan(' '); //false

isnan({}); //true

isnan(); //true

isnan(infinity); //false

isnan(1/0); //false

isnan(0/0); //true

js中的isNaN 函式

上面的 isnan的意思是is not a number 也就是說當他是數字的時候返回的是false 當文字中含有數字的時候返回的true var x 123 var y casc234 alert x y alert isnan y if isnan y 返回的是true var x 123 va...

isNaN 和isFinite 的應用

1.isnan x isnan x 函式用於檢查其引數 x 是否是非數字值。可以記憶為 is not a number 通過這個可以得到 如果引數x不是數字返回true 數字就返回false。提示 isnan 函式通常用於檢測 parsefloat 和 parseint 的結果,以判斷它們表示的是否...

js中的isNaN 函式

上面的 isnan的意思是is not a number 也就是說當他是數字的時候返回的是false 當文字中含有數字的時候返回的true var x 123 var y casc234 alert x y alert isnan y if isnan y 返回的是true var x 123 va...