Kod wygląda jak poniżej.
Wpisujemy 1, jeśli liczba jest większa od 0 - Działa.
Wpisujemy -1, jeśli liczba jest mniejsza od 0 - Działa
Wpisujemy 0, jeśli liczba === 0 - Przeskakuje dalej:
Poniżej zahacza o kolejną ifkę, jeśli liczba !== Number - Wyskakuje ta opcja!
Czyli według kodu równanie 0 === 0 jest błędne, a 0 !== Number = prawdziwe.
Ktoś mi wyjaśni ten geniusz?
<!DOCTYPE html>
<html lang="pl">
<head>
<meta charset="utf-8" />
<script type="text/javascript">
function sprawdz()
{
var liczba = document.getElementById("pole").value;
if (liczba>0) document.getElementById("wynik").innerHTML="dodatnia";
else if (liczba<0) document.getElementById("wynik").innerHTML="ujemna";
else if (liczba === 0) document.getElementById("wynik").innerHTML="zero";
else if (liczba !== Number) document.getElementById("wynik").innerHTML="to nie jest liczba. You know nothing John Snow";
else document.getElementById("wynik").innerHTML="Najpierw coś wpisz...";
}
</script>
</head>
<body>
<input type="text" id="pole" />
<input type="submit" value="Sprawdź" onclick="sprawdz()"/>
<div id="wynik"></div>
</body>
</html>