JavaScript 2

19. hodina DVOP WBB


Matěj Cajthaml — SSPŠ

©

Opakování

Jak se liší "<=" a "<"?
Můžeme nastavit hodnotu undefined nějaké proměnné?
Jak se v JS napíše logické AND, OR a NOT?
Jak v JS zjistíme délku textové hodnoty?
Můžeme dělit celé číslo desetinným číslem?

Objekty

Objekty

  • způsob uložení dat programu
  • jedná se o pár jméno—hodnota
  • hodnota může být cokoliv — klidně i další objekt
  • podobá se Dictionary z C#
  • lze procházet cykly

Ukázka objektů

Přístup

Procházení

Pole

Pole

  • způsob uložení dat programu
  • stejně jako proměnné se ukládá v operační paměti
  • v JS: nemá pevně stanovenou velikost
  • v JS: nemá pevně stanovený datový typ
  • lze procházet cykly

Vytvoření

Přidávání

Čtení

Velikost

Pomocné metody

Hledání — find a filter

Přemapování — map

Procházení

Jak funguje pomocná metoda pro pole redukcereduce?

Funkce

Funkce

  • černá krabička
  • zpracovává vstup (parametry) a vrací nějakou hodnotu
  • klíčová slova: function, return
  • můžeme definovat globálně nebo do proměnné

Ukázka

Math

Zpoždění

  • daná funkce se spustí o daný počet milisekund pouzději
  • setTimeout

Opakování

  • daná funkce se bude opakovat po daném počtu milisekund
  • setInterval

Návratovou hodnotou metod setTimeout a setInterval je číslo daného zpoždění/opakování. Oba dva můžeme zastavit pomocí tohoto čísla — jak?

https://developer.mozilla.org/en-US/docs/Web/JavaScript

Objekt

  • uložení více dat různých datových typů na jednom místě
  • tvoříme pomocí složených závorek

Můžeme mít v objektu funkci?

Jak se taková funkce bude volat?

Třída

  • nějaká šablona určitého jména
  • vytváříme instanci — určitý objekt, který kopíruje šablonu
  • šablona nám určuje proměnné — vlastností, které bude instance vždy obsahovat
  • určuje taktéž funkce — metody, které zajisté budeme moci volat na instanci

Třídy jsou tedy takové objekty, ne? Proč tedy třídy používáme?

Třídy nám zaručí jakousi konzistenci dat.

Kód rozdělujeme do více celků, které se lépe zpracovávájí.

Nemusíme opakovat ten samý kód.

Definice tříd

Co to vypíše?

Definice metod

Přístup k hodnotám

Komplexní přístup

Metody s parametry

Konstruktor

Konstruktor

  • speciální metoda
  • je přitomný i když jej nedefinujeme
  • slouží k připravení instance k použití
  • např. hodnoty, které musí být přítomny, různé zpracování, načtení servis

Ukázka

Opakování

Jak veliké může být pole?
Může být objekt klíč s hodnotou mezery?
Proč používáme třídy?
K čemu slouží klíčové slovo this?
Co je to funkce?

Děkuji za pozornost!

  • matej.cajthaml@ssps.cz
  • https://ssps.cajthaml.eu/