JavaScript

Zdroje od Václav Revenda

Výukové video 1 (25 min)

Výukové video 2 (41 min)

Výukové video 3 (36 min)

Výukové video 4 (29 min)

Opakování JS

1. Vytvořte validní www stránku, externí JS soubor a vše propojte. (1b)
2. Vytvořte skript, který se uživatele zeptá, zda chce pokračovat. (1,5b)
3. Výsledek od uživatele se uloží do proměnné „dale“. (1b)
4. Vytvořte script, který se při spuštění uživatele zeptá na jeho jméno. (1,5b)
5. To, co uživatel zadal, se uloží do promenné „jmeno“. (1b)
6. Proměnou „jmeno“ vypište pomocí hlášky webu (vyskočí okno). (1b)
7. Podle proměnné „dale“ vypište jako běžný text do dokumentu slovo „ANO“, pokud uživatel
klikl, že bude pokračovat, nebo „NE“, pokud uživatel pokračovat nechce. (3b)
8. Napište skript, který se uživatele zeptá, na počet odrážek seznamu (2b.)
9. Výsledek uložte do libovolné proměnné
1. pokud uživatel výše zadal číslo vyšší jak 1, vypíše se do dokumentu nečíslovaný
seznam s daným počtem odrážek (3b.)
2. pokud uživatel napsal 0, skript se ukončí a vypíše: „Nezadali jste žádný počet odrážek
seznamu“. (3b.)
10. Vytvořte funkci, která vypíše kdekoliv do dokumentu Vaše jméno, které jste uložili do
proměnné výše. (2b.)

 

Lekce na ITNETWORK

1. díl – Úvod do JavaScriptu

2. díl – Začínáme s JavaScriptem – První skripty

3. díl – Základní datové typy v JavaScriptu a jejich funkce

4. díl – Podmínky v JavaScriptu

switch(myInterval){
   case 0-2:
      //doStuffWithFirstRange();
      break;

   case 3-6:
      //doStuffWithSecondRange();
      break;

   case 6-7:
      //doStuffWithThirdRange();
      break;

   default:
      //doStuffWithAllOthers();
}
 //myInterval je celé číslo

nebo:
switch (true){

    case myInterval < 0:
        // I'm guessing this is an error
        break;    
    case /* myInterval >= 0 && */ myInterval <= 2:
        doStuffWithFirstRange();
        break;

    case /* myInterval >= 3 && */ myInterval <= 5:
        doStuffWithSecondRange();
        break;

    case /* myInterval >= 6 && */ myInterval <= 7:
        doStuffWithThirdRange();
        break;

    default:
        doStuffWithAllOthers();
}
nebo:
var x = this.dealer;
switch (true) {
    case (x < 5):
        alert("less than five");
        break;
    case (x < 9):
        alert("between 5 and 8");
        break;
    case (x < 12):
        alert("between 9 and 11");
        break;
    default:
        alert("none");
        break;
}

nebo:
var grade='A';
            document.write("Entering switch block<br />");
            switch (grade)
            {
               case 'A': document.write("Good job<br />");
               break;
            
               case 'B': document.write("Pretty good<br />");
               break;
            
               case 'C': document.write("Passed<br />");
               break;
            
               case 'D': document.write("Not so good<br />");
               break;
            
               case 'F': document.write("Failed<br />");
               break;
            
               default:  document.write("Unknown grade<br />")
            }
            document.write("Exiting switch block");

Řešte příklady:

  1. Napište program, který ze zadané ujeté vzdálenosti vypočte platbu taxikáři, jestliže má stanoveny následující sazby:
    0 – 19km25 Kč/km
    20 – 39km23 Kč/km
    40 – 59km20 Kč/km
    60km a více17 Kč/km

    Zadaná vzdálenost může být desetinné číslo, ale ošetřte zadání záporné vzdálenosti.Poznámka: Sazba se mění až po ujetí daného počtu km (20, 40, 60 km) tzn. zákazník, který ujel 39,9 km má stanovenou sazbu 23 Kč/km atd.

  2. Naprogramujte kalkulačku. Pro dvě vstupní hodnoty a danou operaci (+ – * /) vytiskněte výsledek. (případně celou rovnici) Pozor na dělení nulou!
    Příklady: vstup: 3 5 + výstup: 3+5=8, vstup: 10 0 / výstup: nulou nelze dělit
  3. Na vstupu jsou zadány koeficienty kvadratické rovnice a, b, c. Sestavte program, který spočítá kořeny této rovnice.
 

5. díl – Cykly v JavaScriptu

Řešte příklady:

  1. Najdi největšího společného dělitele dvou přirozených čísel pomocí Eukleidova algoritmu:
    Mějme dána dvě přirozená čísla, uložená v proměnných u a v (u>v).
    Dokud v není nulové, opakuj:
      Do r ulož zbytek po dělení čísla u číslem v
      Do u ulož v
      Do v ulož r
    Konec algoritmu, v u je uložen největší společný dělitel původních čísel.
  2. Napište program, který vypočítá ciferný součet zadaného celého (kladného i záporného) čísla a vypíše jej. Použijte k tomu cyklus while.
  3. Napište program, který na obrazovce vytvoří čtverec ze znaků „*“ o uživatelem zadané velikosti strany (počet dílků). Omezte zadání velikosti strany na menší počet např. na 20.
  4. Vytvořte program pro zadání PIN do mobilu.
  5. Vytvořte program, který po zadání čísla spočítá jeho faktoriál.

6. díl – Pole v JavaScriptu

Řešte příklady s využitím pole:

  1. Vytvořte pole, které naplníte těmito příslovími:“Odborník je člověk, který ví, co v daném oboru neumí.“, „Hudba zdvojnásobí každý příběh.“,“U ohně je jeden hlas lepší než tři kytary.“,“Jeden obrázek se stahuje stejně dlouho jako tisíc slov.“,“Neexistuje něco jako hloupá otázka.“Potom vytvořte program, který vypíše náhodně jedno z přísloví.

    Výběr náhodné položky

    nahodnaHodnotaZPole = promenna[Math.floor(Math.random()*promenna.length)];

    Math.floor je zaokrouhlování dolů (pole je počítáno od nuly, takže floor se přesně hodí), Math.random() vrací náhodné číslo od nuly do jedničky.

  2. Vytvoř program, který spočítá součet prvků pole.
  3. Vytvoř program, který spočítá součin prvků pole.
  4. Uživatel napíše slovo a program ho vypíše pozpátku.
  5. Uživatel napíše větu a program spočítá počet slov ve větě (slova jsou odděleny mezerami). Využijte funkci split (viz 3. díl). Dále vypíše slova z věty pozpátku a seřadí slova podle abecedy.

7. díl – Funkce v JavaScriptu

Řešte příklady s využitím funkcí:

  1. Vytvořte program, který po zadání čísla a jeho mocniny spočítá mocninu čísla.
  2. Vytvořte program, který po zadání čísla  spočítá jeho faktoriál.
  3. Vytvořte program, který po zadání čísla  spočítá jeho ciferný součet.
  4. Vytvořte program, který po zadání koeficientů kvadratické rovnice spočítá její kořeny.
  5. Vytvořte program, který po zadání slova vypíše slovo pozpátku.
  6. Vytvořte program, který po zadání věty vypíše její slova pozpátku, určí počet slov ve větě a seřadí slova podle abecedy.

8. díl – Základy práce s DOM a události v JavaScriptu

Řešte příklady z minulého dílu pomocí externího souboru *.js.

Externí soubory je vhodné umístit do jedné složky a vhodně je pojmenovat.

9. díl – Manipulace s DOM v JavaScriptu

10. díl – Editor tabulek v JavaScriptu

11. díl – Dokončení editoru tabulek v JavaScriptu

12. díl – Obrázky a kreslení na canvas v JavaScriptu

13. díl – 2D kontext plátna v JavaScriptu

14. díl – Časovače a animace v JavaScriptu

Canvas aneb grafika JavaScriptem

15. díl – JavaScript & canvas – Mandelbrotova množina

JavaScript zdrojákoviště – Základní konstrukce jazyka