NOVINKA: Získej 40 hodin praktických dovedností s AI – ZDARMA ke každému akreditovanému kurzu!

Diskuze – Lekce 6 - Podmínky v JavaScriptu

Zpět

Upozorňujeme, že diskuze pod našimi online kurzy jsou nemoderované a primárně slouží k získávání zpětné vazby pro budoucí vylepšení kurzů. Pro studenty našich rekvalifikačních kurzů nabízíme možnost přímého kontaktu s lektory a studijním referentem pro osobní konzultace a podporu v rámci jejich studia. Toto je exkluzivní služba, která zajišťuje kvalitní a cílenou pomoc v případě jakýchkoli dotazů nebo projektů.

Komentáře
Avatar
Tano7
Člen
Avatar
Tano7:9.10.2019 23:44

Jak přidat k hodinám i minuty? Zkoušel jsem tohle a někde mám chybu :-(

else if
((d.getHours() > 22) && (d.getHours() <= 23))
document.write("VEČERKA, je 22- 23 h.");
else if
 (((d.getHours() > 23 + (d.getMinutes() >=0)) && ((d.getHours() <= 00 + (d.getMinutes() >0)))))
 document.write("Je 23 - 00 h.");
Odpovědět
9.10.2019 23:44
Život by byl mnohem snazší, kdybychom k němu měli zdrojový kód.
Avatar
Odpovídá na Tano7
Jakub Podskalský:10.10.2019 19:01

Zkus zaměnit to + za další && operátor. Když to totiž sčítáš, tak oba dva sčítance se poté pokusí vyhodnotit na Boolean, True nebo False. True se rovná 1 a False 0. Takže se tyto dvě hodnoty (oba dva sčítance) sečtou, a pokud to bude > 0, tak se ta strana vyhodnotí jako True a porovná se pomocí && s tou stranou druhou (kde se zas děje to samé). Jelikož tam máš na obou stranách d.getMinutes() >= 0, tak to bude vždycky True (1), protože minuty jsou v JavaScriptu 0-59 a to je určitě větší nebo rovno nule.
Když 1 sečteš s druhým sčítancem, tak to bude bude vždycky 1 nebo 2, a to je True. Takže True && True se rovná True. A na obou stranách máš ty fixně pravdivé minuty, takže se tento else if blok rozjede pokaždé, jestliže se k němu dojde.

Píšu z mobilu, takže promiň, jestli je to trochu nešťastně popsané. Kdyžtak řekni a pokusím se to vysvětlit líp. :)

 
Odpovědět
10.10.2019 19:01
Avatar
David P.
Člen
Avatar
David P.:30.12.2019 14:56

Dobrý den,
dokáže mi někdo poradit, kde mám chybu? Při spuštění v prohlížeči se nezobrazí vůbec nic.
Děkuji moc.

<!DOCTYPE html>

<html lang="cs-cz">
    <head>
        <meta charset="utf-8" />
        <title>Burza králíků</title>
    </head>

    <body>
        <script type="text/javascript">
            document.write("Ahoj!");
            document.write("Zde můžete prodat své králíky.");
            let kralici = prompt("Kolik králíků chcete prodat?");
            if (kralici>10)
                document.write("Máte jich moc!");
            else if (kralici<10) && (kralici>4)
                document.write("V pořádku, máte jich akorát.");
            else if (kralici<5)
                document.write("Máte jich málo!");
            else
                document.write("Chybná volba! Odejděte prosím!");
        </script>
    </body>
</html>
 
Odpovědět
30.12.2019 14:56
Avatar
Jurajs
Člen
Avatar
Odpovídá na David P.
Jurajs:30.12.2019 16:06

Ahoj posílám opravený kód :D

document.write("Ahoj!");
    document.write("Zde můžete prodat své králíky.");
    let kralici = prompt("Kolik králíků chcete prodat?");
    if (kralici>10)
        document.write("Máte jich moc!");
    else if (kralici<10 && kralici>4) // Zde byla chyba závorky! :)
        document.write("V pořádku, máte jich akorát.");
    else if (kralici<5)
        document.write("Máte jich málo!");
    else
        document.write("Chybná volba! Odejděte prosím!");
 
Odpovědět
30.12.2019 16:06
Avatar
Jurajs
Člen
Avatar
Odpovídá na David P.
Jurajs:30.12.2019 16:10

Ještě jedna věc používej F12(console), tam ti píše, kde a co máš za chybu...

 
Odpovědět
30.12.2019 16:10
Avatar
David P.
Člen
Avatar
Odpovídá na Jurajs
David P.:30.12.2019 16:12

Dobře, budu se toho držet.
Děkuji moc za rady.

 
Odpovědět
30.12.2019 16:12
Avatar
David P.
Člen
Avatar
Odpovídá na Jurajs
David P.:2.1.2020 18:07

Ahoj,
mám ještě problém. Ten opravený kód, který jsi poslal, fungoval a nyní již nefunguje. Vůbec to nechápu...
Děkuji moc a chápu, jestli tě naštvalo...

<!DOCTYPE html>

<html lang="cs-cz">
    <head>
        <meta charset="utf-8" />
        <title>Burza králíků</title>
    </head>

    <body>
        <script type="text/javascript">
            document.write("Ahoj!");
            document.write("Zde můžete prodat své králíky.");
            let kralici = prompt("Kolik králíků chcete prodat?");
            if (kralici=>10)
                document.write("Máte jich moc!");
            else if (kralici<10 && kralici>4)
                document.write("V pořádku, máte jich akorát.");
            else if (kralici<5)
                document.write("Máte jich málo!");
            else
                document.write("Chybná volba! Odejděte prosím!");
        </script>
    </body>
</html>
 
Odpovědět
2.1.2020 18:07
Avatar
Odpovídá na David P.
Neaktivní uživatel:2.1.2020 18:21

Větší nebo rovno (a menší nebo rovno) se zapisuje ve stejném pořadí, v jakém to říkáš. Tak, jak jsi to napsal, to má úplně jinou funkci.

Odpovědět
2.1.2020 18:21
Neaktivní uživatelský účet
Avatar
David P.
Člen
Avatar
Odpovídá na Neaktivní uživatel
David P.:2.1.2020 18:41

To by mě zaboha nenapadlo, ale funguje to.
Děkuji mnohokrát.

 
Odpovědět
2.1.2020 18:41
Avatar
Jan Srb
Člen
Avatar
Jan Srb:11.5.2020 20:33

Ahoj, chci se zeptat, jestli to dobře chápu, data vložená do programu přes funkci prompt jsou programem brána jako textový řetězec, jak ale dosáhnu toho, aby takto vložená data (čísla) program vyhodnotil jako číslo a dále s nimi prováděl např. numerické operace?

 
Odpovědět
11.5.2020 20:33
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 10 zpráv z 60.