2012-04-11 12 views
1

Ich habe ein Array von Zahlen. Das Array kann eine Null enthalten.Überprüfen, ob Array eine Nummer enthält (Problem mit 0)

Wie kann ich überprüfen, ob das Array eine Nummer enthält oder nicht? Ich bin derzeit dabei, dass:

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

Dies ist jedoch der Auffassung, 0 als auch falsch. Wenn sich also eine 0 im Array befindet, wird es so betrachtet, als wäre das Array leer.

Wie kann ich das überwinden?

Antwort

7

Versuchen Sie folgendes:

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

!= hat eine "falsy" zu überprüfen. 0, undefined, false, null, '', und NaN sind alle falsch. Alles andere ist "truthy". Wenn Sie nur nach false (und nicht nach allen anderen Falschaussagen) testen möchten, müssen Sie === oder !== verwenden. Versuchen Sie != und ==, weil die meisten zu vermeiden, wenn die Zeit, die Sie tatsächlich bedeuten !== und ===

+0

Ich denke, er kann einfach 'if (Zahl (arr. Wert (pos))' was wird zu wahren – elclanrs

+1

Er kann dies nicht tun, weil 'Zahl (arr. Wert (0))' ergibt false – AlexMA

0

könnte eine Lösung sein. Es prüft, ob die Zahl größer als Null ist.

Verwandte Themen