我只是在javascript中测试“ typeof”,所以实际上不知道为什么结果是这样的。
/ **** /
var cota,
plouto;
alert(typeof plouto/cota); //NaN
/ **** /
var cota,
plouto;
alert(typeof (plouto/cota)); //number
/ **** /
var cota,
plouto;
var flo = plouto/cota;
alert(typeof flo); //number
最佳答案
第一个警告NaN
,因为先执行typeof plouto
,然后将结果除以cota
。结果不是数字,因此不是NaN
。您可以这样想象:(typeof plouto) / cota
第二个将plouto
除以cota
,这不是一个数字(因为两个变量都是undefined
),但是NaN
的类型实际上是Number
,这可能会造成混淆!
第三个示例也是如此。
关于javascript - 2个 undefined variable 的结果类型,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7886866/