• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Java Script IsNaN

0 głosów
463 wizyt
pytanie zadane 22 listopada 2017 w JavaScript przez Shiny97 Użytkownik (500 p.)
zmienione kategorie 22 listopada 2017 przez Arkadiusz Waluk

Witam, mam taki program jak poniżej, potrzebuje dodać tutaj zmienną isNaN która będzie sprawdzać czy parametry A,B są liczbami, lecz nie wiem jak jej użyć

<!DOCTYPE html>
<html lang="pl">
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>

<script type="text/javascript">
    alert("Program wyświetli iloraz parametru A przez B")
var A = prompt("Podaj parametr A: ", "");
var B = prompt("Podaj parametr B: ", "");
if (isNaN(A))
        
if (0 == Number(B)&&B!=Number){
document.write("Brak rozwiązania");
            
}else{
document.write("Wynik: " + A/B);
}

</script>
</body>
</html>

3 odpowiedzi

+1 głos
odpowiedź 23 listopada 2017 przez Comandeer Guru (607,060 p.)
  1. Na samym początku przemiel A i B do liczb – czy to przez Number, jak robisz, czy też przez Number.parseInt/Number.parseFloat.
  2. Następnie sprawdź, czy A lub B nie są NaN przy pomocy Number.isNaN.
  3. Następnie sprawdź, czy B nie jest 0.
  4. Jeśli nie, wykonaj działanie.

Tego typu podejście pozwoli Ci stworzyć proste rozwiązanie. 

0 głosów
odpowiedź 22 listopada 2017 przez cz3ran Stary wyjadacz (13,380 p.)

isNaN sprawdza czy parametr nie jest liczbą, zatem jeżeli wprowadzisz do niej liczbę dostaniesz false, zatem jeżeli chcesz sprawdzić czy coś jest liczbą musisz dać !isNaN(A), dodatkowo zwrócił bym uwagę na nawiasy klamrowe (po if(isNaN(A)).

1
komentarz 22 listopada 2017 przez kap Stary wyjadacz (11,620 p.)
...
0 głosów
odpowiedź 22 listopada 2017 przez Ehlert Ekspert (215,010 p.)
W JS nie powinno się korzystać z takich konstruktorów jak Number. Koercja zachodzi automatycznie, więc w Twoim przypadku wystarczy parseInt/parseFloat.
komentarz 22 listopada 2017 przez Comandeer Guru (607,060 p.)

Ale tutaj nikt nie korzysta z Number jako konstruktora. Tutaj Number jest wywoływane jako funkcja, co wykonuje rzutowanie przekazanej wartości na liczbę.

Oczywiście drugi przypadek użycia Number nie ma sensu.

Podobne pytania

+1 głos
2 odpowiedzi 685 wizyt
pytanie zadane 30 stycznia 2023 w JavaScript przez zbiku25 Gaduła (3,000 p.)
0 głosów
1 odpowiedź 313 wizyt
pytanie zadane 31 maja 2022 w JavaScript przez olek1405 Nowicjusz (180 p.)
0 głosów
1 odpowiedź 280 wizyt
pytanie zadane 6 kwietnia 2022 w JavaScript przez chrystian Gaduła (4,780 p.)

93,427 zapytań

142,421 odpowiedzi

322,649 komentarzy

62,787 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

VMware Cloud PRO - przenieś swoją infrastrukturę IT do chmury
...