为什么console.log会报告NaN?

时间:2016-11-16 08:40:36

标签: javascript

为什么firebug说它是NaN虽然不是?

当我使用console.log查看出现问题的对象时,它会显示:

[Object { productId=1957,  amount=3,  productIndex=30}, Object { productId=2087,  amount=4,  productIndex=352}]

但是当我钻进第一个物体看到它的细节时:

amount          NaN
productId       1957
productIndex    30

也会出现第二个对象

amount          NaN
productId       2087
productIndex    352

所以我尝试了字符串化。结果如下:

[{"productId":1957,"amount":3,"productIndex":30},{"productId":2087,"amount":4,"productIndex":352}]

然后我尝试了最后一件事以确保该值是否不是NaN:

console.log(isNaN(obj[0].amount)+','+isNaN(obj[1].amount));

结果:

false,false

两个值绝对不是NaN,但为什么firebug报告NaN?这也适用于Chrome。

是什么导致这个?我错过了什么吗?

编辑:这个问题比我认为重复的问题简单。我确实试图寻找这种同样的问题,但一无所获。但是,当我按照问题的链接时,我已经找到了答案。谢谢大家。

解决方案:console.log不可靠,有时警报()更好。

0 个答案:

没有答案