Načrtovanje in razvoj spletnih aplikacij

Osnove JavaScripta

JavaScript je programski jezik, ki se uporablja v različnih okoljih, najpogosteje v spletnih brskalnikih. Njegovo standardizirano ime je ECMAScript. Danes ga uporabljamo za interaktivne spletne strani, delo z dogodki, asinhrono obdelavo podatkov, module in razvoj sodobnih spletnih aplikacij.

Pri razlagi delovanja JavaScripta je pomembno poudariti, da kodo izvaja gostiteljsko okolje, na primer spletni brskalnik. To okolje jeziku poleg samega jedra ponuja tudi dodatne možnosti, kot so delo z dokumentom HTML, dogodki, časovniki in komunikacija s strežnikom.

Pomni: ECMAScript je standard jezika, JavaScript pa njegovo najbolj razširjeno praktično uresničevanje v spletnih in drugih okoljih.

Osnovna pravila

  • JavaScript se izvaja v gostiteljskem okolju, na primer v brskalniku.
  • Gostiteljsko okolje poleg jezika zagotavlja tudi dodatne objekte in vmesnike, na primer document, window, dogodke in časovnike.
  • Sodobna JavaScript koda pogosto uporablja module, const, let, strogi način ter asinhrono programiranje z Promise, async in await.
  • JavaScript je pomemben del spletnega razvoja, vendar ni omejen le na brskalnik.

V preteklosti so učna gradiva JavaScript pogosto razlagala predvsem kot skriptni jezik za manjše učinke na spletni strani. Danes ima veliko širšo vlogo. Uporablja se za gradnjo zahtevnih uporabniških vmesnikov, za delo z moduli, za asinhrono pridobivanje podatkov in za povezovanje z različnimi spletnimi API-ji.

Zanimivost: Sodobni standard jezika se po letu 2015 praviloma poimenuje po letu izdaje. Uradna izdaja ECMAScript 2025 je šestnajsta izdaja standarda.

Primerjave

Jedro jezika in gostiteljsko okolje

Jedro jezika obsega osnovna pravila, kot so sintaksa, izrazi, stavki, funkcije, objekti in vgrajeni mehanizmi jezika. Gostiteljsko okolje pa doda možnosti, ki so odvisne od prostora izvajanja. V brskalniku so to na primer DOM, dogodki, objekt window in časovniki, v drugih okoljih pa so lahko na voljo drugačni vmesniki.

Starejši in sodobni pristop

Starejša razlaga je JavaScript pogosto delila na jedro, gostitelja in uporabniško razširitev. Taka razlaga je še vedno uporabna kot poenostavljen uvod, vendar je danes smiselno poudariti razliko med standardom ECMAScript in konkretnim izvajalnim okoljem, ki jeziku doda dodatne zmogljivosti.

Sinhrono in asinhrono izvajanje

Del kode se izvede takoj po vrsti, del nalog pa poteka asinhrono. Pri sodobnem JavaScriptu so zato zelo pomembni dogodki, čakalna vrsta opravil, obljube (Promise) ter zapis async/await.

Pomni: Ko JavaScript deluje v brskalniku, samo jedro jezika ni dovolj za delo s spletno stranjo. Za to so potrebni tudi objekti in API-ji, ki jih zagotavlja brskalnik.

Priporočila

  • Pri razlagi JavaScripta jasno ločuj med standardom ECMAScript in zmogljivostmi gostiteljskega okolja.
  • Pri novi kodi uporabljaj const in let namesto var.
  • Za večje projekte uporabljaj module in smiselno razdelitev kode.
  • Za asinhrone postopke uporabljaj Promise, async in await.
  • Pri delu v brskalniku upoštevaj, da številne možnosti, kot so DOM, dogodki in časovniki, niso del samega jedra jezika, ampak del brskalniškega okolja.

Pozor: Objekti, kot so window, document in fetch, niso del samega jedra jezika v vsakem okolju. Gre za možnosti, ki jih praviloma doda gostiteljsko okolje.

Zgradba JavaScripta

Vsebino razdelimo na tri dele:

1. Jedro jezika

Sem sodijo sintaksa, podatkovni tipi, operatorji, funkcije, objekti, razredi, moduli, izjeme in drugi osnovni gradniki jezika.

2. Gostiteljsko okolje

Sem sodijo dodatne možnosti, ki jih doda okolje izvajanja. V brskalniku so to na primer DOM, dogodki, window, document, časovniki in spletni API-ji.

3. Uporabniška koda

Sem sodijo funkcije, objekti, razredi in moduli, ki jih pripravi razvijalec in jih nato uporablja v svojem programu.