2013-05-02 86 views
5

如果未在我的某个表单中输入值,则会在JavaScript中创建NaN的后续结果。我只是想声明随时随地为NaN,则表明它反而会显示为0。我认为,通过简单地添加如何将NaN转换为0?

<script> 

a = a || 0 

</script> 

到我的脚本的开始,这将是罚款。

无论如何,NaN总会等于0,无论情况如何?

+0

isNaN()存在,所以你不必把它转换为0 – Jordan 2013-05-02 15:11:03

+0

@Jordan你错过了问题的要点。 OP希望'NaN'始终等于0. – 2013-05-02 15:13:18

+0

对..为什么?只需使用isNaN()。 – Jordan 2013-05-02 15:14:10

回答

7

NaN是一个全局对象,你可以用覆盖不了

参考:https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/NaN

一种替代方法是使用isNaN然后

a = isNaN(a) ? 0 : a; 
+1

在那里,我澄清说,你根本不能用'NaN'拧紧。更好? – 2013-05-02 15:12:28

+0

我不认为你错过了这一点。他们的代码示例清楚了他们想要做什么,并且您拥有有效的解决方案。 – 2013-05-02 15:13:16

+0

@AshBurlaczenko特里编辑了他的答案。 5分钟前是不同的。因此,为什么我删除了该评论;) – 2013-05-02 15:14:04