28.10. Ponavljanje gradiva
Pitanje 1 (ponavljanje) : Koja su to tri načina povezivanja JavaScripta sa HTML-om ?
- eksterni - u posebnom fajlu - najčešće
- interni - unutar head ili body (ili kombinacija)
- inline - unutar taga (kao atribut taga)
Pitanje 2 (ponavljanje): Šta su to varijable ?
Varijable su mesta u memoriji browsera gde čuvamo vrednosti.
Još ih zovemo i promenljive
U JavaScriptu ne moramo navoditi tip za promenljive
Inicijalna vrednost svake promenljive prilikom kreiranja je undefined
Zadatak 1: Kreirati folder zadatakJs1 i u njemu tri fajla: stranica.html, stil.css, akcije.js
(redosled koraka: kreirati folder, pa ga otvoriti u VSCode, pa u njemu kreirati fajlove,....)
stranica.html: Prvo postaviti dugme. Klikom na dugme treba da se prikaže poruka (alert) gde piše "Zdravo". Nakon toga (nastavak u body delu) kreirati skriptu (script) u kojoj se poziva alert sa porukom "Stranica je učitana". Kakav je rezultat izvršenja ovog koda?
<html>
<head>
<title> Primer sa JavaScript kodom </title>
</head>
<body>
<button onclick="alert('Zdravo')"> Klikni ovde </button>
<script>
alert('Stranica je učitana');
</script>
</body>
</html>
Nastavak zadatka:
Pitanje (pojam): Šta je to scope (izraz je namerno napisan na engleskom jeziku)?
Scope označava u kojem delu koda je neka promenljiva vidljiva. U literaturi se prevodi kao opseg vidljivosti.
Imamo 3 tipa:
- block scope - vidljiva unutar zagrada { } (za blok koda unutar zagrada)
- function/local scope - vidljiva unutar funkcije - lokalne promenljive
- global scope - vidljiva svuda u programu - globalne promenljive
Pitanje (pojam): Razlike i sličnosti var, let, const ?
| var | let | const |
|---|---|---|
| može da se redeklariše | ne može se redeklarisati | ne može menjati vrednost i mora biti inicijalizovana |
| global scope | block scope | block scope |
| može da koristi i pre nego što se deklariše | Treba da počinje velikim slovom | |
| property (članica) objekta window | NIJE property objekta window | NIJE property objekta window |
(Proširenje pojmova iz prethodne lekcije):
Primitivni i kompleksni tipovi podataka
- Primitivni tipovi podataka u jednom momentu mogu imati samo jednu vrednost (string, number, boolean, undefined, null)
- Kompleksni tipovi podataka u sebi mogu da imaju više vrednosti ( objekti, nizovi, funkcije)
Objašnjenje (i primeri):
http://www.webnstudy.com/tema.php?id=js-objekti
Zasad neće biti upuštanja u širu priču o nizovima. Jedno objašnjenje možete pogledati na:
https://edusoft.matf.bg.ac.rs/eskola_veba/#/course/js/js_nizoviuvod
Funkcija je blok koda koji neprimetno čeka dok se eksplicitno ne pozove.
(Funkcije će biti kasnije detaljnije obrađivane u okviru posebnih lekcija.)
Pitanje (ponavljanje) : za šta služi typeof operator ?
Provera kog tipa podataka je vrednost promenljive.
console.log(typeof("pera detlić"));
Zadatak 1 - deo 3: za sve promenljive koje su korišćene, ispisati kojeg su tipa. Prvo koristiti konzolu, a posle toga pokušati to isto izvesti klikom miša na novo dugme.