Problem ze skróconą instrukcją if

Dział poświęcony JavaScriptowi - tworzeniu dynamicznym stron WWW.
mario88
Stały Bywalec
Stały Bywalec
Posty: 128
Dołączył(a): sobota, 14 marca 2015, 19:04

Problem ze skróconą instrukcją if

Post 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?
Morfidon
Administrator
Administrator
Posty: 1332
Dołączył(a): wtorek, 5 sierpnia 2008, 21:48
Contact:

Re: Problem ze skróconą instrukcją if

Post 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
mario88
Stały Bywalec
Stały Bywalec
Posty: 128
Dołączył(a): sobota, 14 marca 2015, 19:04

Re: Problem ze skróconą instrukcją if

Post przez mario88 »

Ok dzięki za pomoc :)
marcinstopa
Nowicjusz
Posty: 1
Dołączył(a): piątek, 3 czerwca 2016, 15:06
Contact:

Re: Problem ze skróconą instrukcją if

Post 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.
Post Reply