2017-01-25 33 views
0
var num1 = parseInt(document.getElementById("num-one").value) ; //'num-one , num-two'is an <input> text field 
var num2 = parseInt(document.getElementById("num-two").value) ; 
var test = num1 + num2 ; 

所以,当我在控制台打开Devtools和类型:在输入栏上使用parseInt函数亘古不变的工作

typeof test 
>'number' 

,但是当我登录它:

console.log(test) 
>NaN 

为什么呢?

+0

问题是'(的document.getElementById( “数一”)。value',它是'undefined'或'null' –

回答

1

如果测试出

typeof NaN

在浏览器控制台,你会发现它返回"number."

看起来像你正在尝试parseInt函数与输入一个大概undefinednull作为那些将返回NaN

这里有一个资源解释为什么NaN是typeof数字

https://javascriptrefined.io/nan-and-typeof-36cd6e2a4e43#.xzui6g25g

+0

感谢,但我想parseInt函数的输入是字符串 –

+0

我的意思是typeof document.getElementById(“num-one”)。value> string' –

+0

即使输入是一个数字,在解析 –

相关问题