2012-04-11 62 views
1

我有一个数组数组。该数组可能包含一个零。检查数组是否包含数字(用0发行)

如何检查数组是否包含数字?我目前这样做:

if (Number(arr. value(pos)) != false)

然而,这考虑了0假了。所以如果数组中有0,它会认为它就好像数组是空的一样。

我该如何克服这个问题?

回答

7

试试这个:

if (Number(arr. value(pos)) !== false)

!=做了 “falsy” 检查。 0, undefined, false, null, '',NaN都是虚假的。其他一切都是“真理”。如果您只想测试虚假(而不是所有其他虚假陈述),则必须使用===!==。尽量避免!===,因为如果大多数的时候,你实际上意味着!=====

+0

我猜他可以做'if(Number(arr。value(pos))'这将评估为true – elclanrs 2012-04-11 19:39:58

+1

他不能这样做,因为Number(arr。value(0))'计算结果为false – AlexMA 2012-04-11 19:48:30

0

可能是一个解决方案。它检查数字是否大于零。