Základy
Pole a cykly
Pole je seznam hodnot v jedné proměnné. Cyklus s nimi udělá totéž, jednu po druhé.
Na nákupním seznamu a známkách ukážeme, jak se pole zakládá, čte a mění a jak ho projít cyklem.
Pole · 1
Seznam v hranatých závorkách
Pole zapíšeme do hranatých závorek [ ], položky oddělíme čárkou. Ke každé se dostaneme přes její pořadí, index.
Pozor: počítá se od nuly. První položka má index 0.
length je délka pole. Poslední položka má proto index nakup.length - 1.
Pole · 2
Přidat, změnit, odebrat
push() přidá položku na konec, pop() poslední odebere. Přes index položku přepíšeme. includes() odpoví, jestli v poli něco je.
Pole je v const, a přesto se mění. const hlídá jen to, aby proměnná neukazovala na jiné pole. Obsah pole měnit smí.
Cyklus · 1
Cyklus for…of
Cyklus zopakuje kód pro každou položku pole. V každé iteraci je v proměnné vec další položka. Pole má tři položky, kód ve { } proběhne třikrát.
Cyklus · 2
Sčítání v cyklu
Typický úkol: projít čísla a něco z nich spočítat. Před cyklem založíme let soucet = 0 a v každé iteraci k němu přičteme další známku.
soucet += z je zkratka pro soucet = soucet + z. toFixed(2) zaokrouhlí na dvě desetinná místa.
Cyklus · 3
Cyklus s počítadlem
Klasický for má tři části: začátek let i = 1, podmínku, dokud se má opakovat, a krok i++ (přičti jedna). Hodí se, když potřebujeme číslo iterace.
Metody pole
Nové pole: map a filter
Pole umí samo projít všechny položky. Dáme mu funkci, kterou má na každou použít.
mapvytvoří nové pole, kde každá položka projde funkcí,filternechá jen položky, pro které funkce vrátítrue,forEachjen něco udělá s každou položkou, nic nevrací.
Tady se hodí arrow funkce z lekce Funkce. z => z * 10 čtěte „každé z vezmi desetkrát“.
Výpis
Z pole string
join() spojí položky do jednoho stringu a mezi ně vloží, co mu dáme. Ideální na hezký výpis seznamu.
Shrnutí
Seznamy a opakování
Ano
- pole v
consta změny přespush,pop, index for…ofna projití všech položekmapafilter, když chcete nové pole- indexy od nuly, poslední je
length - 1
Ne
nakup[3]u tříprvkového pole: dostaneteundefined- nekonečný cyklus: podmínka
for, která nikdy nepřestane platit