Strona 1 z 1

Problem ze skróconą instrukcją if

Napisane: sobota, 30 maja 2015, 14:35
przez mario88
Witam,
mam problem ze skróconą instrukcją if, napisałem coś takiego:

Code: Zaznacz cały

       var a = prompt("Podaj liczbe a: ");
       var b = prompt("Podaj liczbe b: ");
       
       alert( (a>b) ? "Prawda" : "Falsz" );
I gdy wpisuję w okienku dla liczby a wartość 10 a w okienku dla b wartość 5 to alert wyświetla mi Fałsz mimo że warunek powinien zwrócić Prawda.

O co tu biega? :?

Teraz jeszcze zauważyłem ze jeżeli podam dla a wartość 4 a dla b wartość 2 to zwraca wynik prawidłowy czyli Prawda.

Wygląda to tak jakby nie rozpoznawało liczby dwu cyfrowej. Tak jest?

Re: Problem ze skróconą instrukcją if

Napisane: sobota, 30 maja 2015, 18:14
przez Morfidon
Pamiętaj, że to co wpisujesz i zwraca prompt to nie jest liczba, tylko string. Pomimo, że wpisałeś liczbę JavaScript spodziewa się ciągu znaków i trak traktuje właśnie wpisaną liczbę.

Ciężko sprawdzić czy ciąg znaków jest większy czy mniejszy w końcu to znaki.

przeparsuj zwrócony wynik metodą parseInt.

Więcej o tym w lekcji 59 kursu JavaScript

Re: Problem ze skróconą instrukcją if

Napisane: sobota, 30 maja 2015, 23:44
przez mario88
Ok dzięki za pomoc :)

Re: Problem ze skróconą instrukcją if

Napisane: piątek, 3 czerwca 2016, 15:39
przez marcinstopa
Na Windows 7 x64 skrócony zapis działa szybciej o całe 3,4 % co jest w miarę dobrym wynikiem jeśli zauważymy, że warunki stawiamy w kodzie dosyć często Nie zapominajmy również o oszczędności w wielkości pliku, co o ile w przypadku komputerów już za bardzo nam nie pomaga, to przy ściąganiu na telefon może mieć spore znaczenie.