You are on page 1of 15

FAKULTET PRIRODOSLOVNO-MATEMATIČKIH ZNANOSTI I KINEZIOLOGIJE

POVIJEST JAVASCRIPT-A
SEMINARSKI RAD IZ PREDMETA Računalni Praktikum 2

SPLIT, 2009.
Sadržaj

SADRŽAJ...................................................................................................................................1

1. UVOD.................................................................................................................................2

2. UKRATKO O HTML I DOM............................................................................................3

2.1. HTML...........................................................................................................................3

2.2. DOM (DOCUMENT OBJECT MODEL)...................................................................4

3. ŠTO JE JAVASCRIPT?.....................................................................................................6

3.1. KRAJ RATA INTERNET PREGLEDNIKA..............................................................8

3.2. NOVI POČETAK........................................................................................................8

3.3. NAČINI KORIŠTENJA...............................................................................................9

3.4. PROBLEMI................................................................................................................10

3.5. PRVI JAVASCRIPT PRIMJER.................................................................................11

4. ZAKLJUČAK...................................................................................................................13

5. LITERATURA.................................................................................................................14

1
1. UVOD

Tema ovoga seminarskog rada je kao što je napisano na naslovnoj strani „Povijest
JavaScripta“. Jezik koji omogućava dinamičnost internet stranica naziva se JavaScript. Osim
JavaScript-a za istu namjeru može se koristiti i VBScript, ali on se u praksi iznimno rijetko
koristi.

U radu najprije ukratko objašnjavam što su to HTML i DOM. Taj dio je bitan za
razumijevanje cijeloga rada, a pogotovo jer se kod JavaScript-a stavlja u oznake HTML.
Ukratko ću opisati kako se JavaScript razvijala kroz godine, probleme kroz koje je naišao
razvoj, te kakvo je današnje stanje. Spomenit ću i prvi primjer koji je napravljen u skriptnom
jeziku JavaScript.

2
2. UKRATKO O HTML I DOM

2.1. HTML (HyperText Markup Language)

Povijest HTML-a započinje već krajem prve polovice 20-og stoljeća kada se razmišljalo na
koji način skladištiti tekstualne i grafičke informacije te na koji način iste logički povezati. Ta
i slične ideje (a i rješenja) su se desetljećima pojavljivali kao odgovor na razne probleme.
Jedan od češćih problema koji je dosta povezan sa idejom HTML-a bio je: na koji način
označiti tj. formatirati tekst i slike - rješenje tog problema primjenu je najčešće našlo za
članke u novinama i knjige.

S proširenjem interneta početkom 90-ih i pojavom prvih interpretera internet stranica (među
prvima Cello, Viola, MidasWWW) pojavio se i HTML. Od tada do danas HTML je doživio
dosta promjena i verzija.

Glavna namjena HTML-a je određivanje (označavanje) koje informacije i na koji način će se


one prikazati na internet stranicama. Treba napomenuti da HTML nije programski jezik već
jednostavan jezik za označavanje. Sastoji se od jednostavnih označnih elemenata koji se
nazivaju tag-ovi (oznake) i unutar kojih se smještaju informacije. Način na koji će se
pojedina infomacija, bilo tekstualna ili grafička, prikazati ovisi o tag-u unutar kojega je
smještena. Sama sintaksa HTML-a je dosta jednostavna. Također važno je napomenuti da je
jedna od iznimno bitnih karakteristika HTML dokumenata mogućnost definiranja veze među
stranicama.

Izgled pojednostavljenog HTML dokumenta dan je sljedećim primjerom:

<HTML>

3
<HEAD>
<TITLE>Naslov dokumenta</TITLE>
</HEAD>
<BODY>
<H1>Naslov</H1>
<H2>Podnaslov</H2>
<P>Text, text, text...</P>
<a href="neka_stranica.html">slijedeca</a>
</BODY>
</HTML>

U počecima razvoja internet stranica HTML je služio sa ciljem, da se unutar njega smještaju
informacije a ujedno i određuje na koji način će se te informacije prikazati. Danas se zbog
razvoja ostalih (specifičnih) jezika teži da HTML ima malo drugačiju ulogu. Ideja je da
HTML sadrži informacije no da pomoću raznih tag-ova pojedine elemente tih informacija
(samo) označi, bez da se definira kako će se ti elementi prikazati. Način na koji će se ti
elementi onda prikazati ili mijenjati pri interakciji sa posjetiteljem vrše se u drugim jezicima:
CSS (Cascading Style Sheets) i JavaScript-u. Ova ideja se pojavila kao rezultat težnji
raslojavanja samih podataka i načina njihovog prikaza, i to ne samo za područje internet
stranica već i klasičnih tekstualnih dokumenta, dokumenata namijenjenih za pregled
mobilnim telefonima itd.

2.2. DOM (DOCUMENT OBJECT MODEL)

DOM predstavlja iznimno bitan faktor u DHTML(Dynamic HyperText Markup Language).


Na hrvatskom bi se DOM preveo kao objektni model dokumenta. Upravo se iz imena može
vidjeti čemu on služi. Kao prvo riječ je o modelu tj. definiranju strukture HTML dokumenta.
Prilikom definiranja strukture HTML dokumenta postavljaju se sljedeća pitanja:

 Koji sve tag-ovi postoje na stranici?


 Koliko ih ima?

 Na koji način su poredani?

 Koja su svojstva tih tag-ova ?

4
 Na koji se način elementi tih tag-ova prikazuju na stranici ?

DOM daje odgovor na ova pitanja. On izražava strukturu HTML dokumenta na univerzalan,
sadržajno neovisan način.

Postoji više razina (level-a) DOM-a koji se međusobno razlikuju po objektima koje sadrže,
kao i mogućnostima mijenjanja svojstava i prikaza tih objekata. Primjer pojednostavljene
sheme elemenata DOM-a dan je sljedećom slikom:

Zahvaljujući standardiziranom DOM-u, različiti preglednici rade iste stvari na gotovo isti
način.

5
3. ŠTO JE JAVASCRIPT?

JavaScript je skriptni jezik na strani klijenta (jer kod jezika izvršava web browser), koji služi
za upravljanje ili izmjenu HTML dokumenta za vrijeme pregledavanja tog dokumenta.
Izvorno je razvijen od strane kompanije Netscape u suradnji s Sun Microsystems. Autor
jezika, koji je namijenjen upotrebi na web stranicama, je Brendan Eich. Prvo je bila poznata
pod imenom Mocha pa LiveWire te LiveScript (kako bi naglasio dinamičku prirodu jezika).
Kako je kod jezika blizak kodu Java-e i jezik je preimenovan u JavaScript. JavaScript je
razvijen za Netscape-ov Navigator 2.0 1996. godine. Razvoj ovoga standarda u prošlosti je
prošao kroz nekoliko faza. U vrijeme kad se JavaScript 1.0 pojavila Netscape Navigator je
dominirao tržištem preglednika. Microsoft se trudio da sa svojim preglednikom, Internet
Explorer-om što brže prati vodstvo Netscape-a a tako da je napravio svoj vlastiti jezik
VBScript usporedno s verzijom JavaScript, nazvanom Jscript koja je predstavljena s Internet
Explorer 3. Rezultat nestandardiziranosti bio je taj da je organizacija ECMA International
(European Computer Manufacturers Association) preuzela standardizaciju JavaScript-a te je
odgovorna za njen daljni razvoj. Rezultat toga je bila ECMAScript, još jedno ime za isti jezik.
Standard ECMA-262, odnosno prva inačica standarda za taj jezik, donešen je 1997., a ISO ga
je prihvatio 1998. godine.

Jedan od bitnijih dijelova JavaScript-a je podrška događajima (eng. events). Događaji na


stranici se događaju kao rezultat neke akcije posjetitelja- klik mišem, prelazak mišem preko
nekog objekta, učitavanja dokumenata, izvršavanje validacije podataka (npr. ako korisnik
šalje podatke serveru, korisno je validirati podatke na klijentovoj strani prije nego ih
pošaljemo serveru, jer na taj način rasterećujemo server), detektirati koji browser korisnik
koristi (na taj način možemo korisniku prezentirati stranicu prilagođenu njegovom browseru),
kreirati „kolačiće“ (eng. cookies)(mehanizam zapisivanja i čitanja podataka na korisnikovom
računalu) i slično. Iznimno su korisni jer se onda može definirati što će s dogoditi ukoliko

6
posjetitelj vrši određene radnje. Na taj način posjetitelj dobiva osjećaj interakcije tj. osjećaj da
su stranice „žive“.

Može se istaknuti da JavaScript nema ništa s Java-om, programskim jezikom koji je razvijen
od strane Sun Microsystems. JavaScript se orginalno trebala zvati LiveScript. „JavaScript“ je
najvjerovatnije izabrano ime jer dobro zvuči, ali odabir tog imena je samo stvorio zabunu dva
programska jezika kod ljudi. Zabuna je veća jer sama činjenica da internet preglednici
podržavaju i oblik Java jezika. Dok „snaga“ Java-e leži u činjenici da može biti korištena u
gotovo svakoj sredini, JavaScript je uvijek planirana da bude u granicama internet
preglednika.

JavaScript je skriptni jezik. To znači da za razliku od programa koji sve rade sami, JavaScript
jezik jednostavno kaže internet pregledniku što da radi. Internet preglednik pokreće skriptu i
odradi cijeli posao, zato je JavaScript često uspoređivana s kompajlerskim programima kao
što su Java i C++. JavaScript često daje programerima šansu da mijenjaju izgled internet
preglednika.

Ukratko:

 Interpretira se (ne kompajlira) na strani korisnika


 Kod se integrira unutar HTML koda (oznaka)

 Podržava mali broj tipova podataka: numeričke,boolean, null i string vrijednosti, bez
posebnih zahtjeva za deklariranjem tipa podatka

 Objektno orijentiran, koristi postojeće objekte bez klasa i naslijeđivanja

 Podržava i funkcije ali bez posebnih zahtjeva za deklariranjem

 Dinamička povezanost – objektne reference provjeravaju se u tijeku izvođenja (run-


time)

7
 Podržava gotovo sve operatore (aritmetičke, relacijske, uvjetne te operatore
pridruživanja)

 Podržava kontrolu toka i različite vrste iskaza (if...else, for, for...in, while,do...while,
with, break_continue, function_return)

3.1. KRAJ RATA INTERNET PREGLEDNIKA

Microsoft je dobio bitku preglednika. Internet Exploreru je predoderđeno da pobijedi zbog


činjenice da dolazi na računalima na kojima je instaliran Windows operacijski sustav. Ljudi
koji su najjače udareni od rata preglednika su internet dizajneri. Razvoj preglednika je postao
noćna mora. Uspostavljena je grupa WaSP(Web Standards Project). Prvi korak koji je WaSP
poduzeo je bio poticanje pregledničkih proizvođača da prihvate preporuke od W3C (World
Wide Web Consortium)- iste preporuke koje su proizvođači preglednika predložili.

3.2. NOVI POČETAK

Internet Explorer 5 koji je bio ukrcan s ugrađenom podrškom za W3C standardiziranim


DOM, očuvao je podršku za stari, čiji je vlasnik bio Microsoft. Netscape je odlučio da napravi
prekid i puštanjem preglednika da nema ništa zajedničko s NN4. NN6 čak je prskočio jednu
verziju broja, i koristio je potpuno drugačiji prikaz pokretača s daleko boljom CSS podrškom.
Također je podupirao standardni DOM, ali bez ikakve spojivosti s starim Netscape DOM-om.

U međuvremenu ostali su se preglednici pojavili na sceni. Kada se Apple prvi put pojavio sa
svojim internet preglednikom nazvanim Safari 2003. godine. Firefox, Mozilla i Camino,
bazirani na istom pokretaču kao Netscape 6 i 7 imali su odličnu podršku za DOM. Opera i
Konquerer su također imali jaku DOM podršku.

Preko 95% preglednika koristi ugrađenu podrđšku za DOM. Rat preglednika kasnih
devedesetih je iza nas. Iako nijedan preglednik nema potpuni W3C DOM, svi oni koriste oko
95% tih specifikacija. To sve znači da nešto možemo napisati samo jednom i to objaviti

8
svugdje. Dok se pridržavamo DOM standarda možemo biti sigurni da će naša skripta gotovo
uvijek raditi.

3.3. NAČINI KORIŠTENJA

JavaScript kod izvršava browser. Zato kod treba ubaciti unutar HTML dokumenta. To se
može izvesti na dva načina. Prvi način je da kod ubacimo unutar oznaka <script
language=“javascript“> i </script>. Pogodan je za kratke kodove. Veće kodove možemo
snimiti unutar posebne .js datoteke, i onda ga unutat HTML dokumenta uključiti pomoću
<script src=“naziv_skripte.js“/>. Ako se JavaScript kod nalazi unutar body elementa, onda će
se izvršiti odmah prilikom učitavanja stranice, ukoliko to ne želimo, nego se taj kod treba
izvršavati nakon nekog specijalnog događaja, onda ga treba staviti unutar head elementa i
pozvati ga kada zelimo da se izvrši.

JavaScript razlikuje velika i mala slova. Naredbe (eng. statements) se razdvajaju prelaskom u
novi red ili točka-zarezom (;). Stavljati toćku- zarez na kraju linije nije obavezno ali je
uobičajno. Blokovi naredbi se odvajaju vitičastim zagradama ({i}). Komentari se pišu
unutar /* i */ ili nakon //. Varijable nemaju tipove tj. u svaku varijablu možemo spremiti
vrijednost bilo kojeg tipa. Za razliku od varijabla vrijednosti imaju tipove. Varijable se mogu
deklarirati na bilo kojem mjestu u kodu. Varijable nije obavezno deklarirati. U slučaju da
varijabla nije deklarirana, njeno prvo korištenje smatra se deklaracijom.

Objektima u HTML-u se u JavaScript-u pristupa preko ID atributa. Svim objektima u HTML-


u se također može pristupiti preko globalnih polja koja se implicitno definiraju za svaki
HTML dokument. Shema tih polja dana je sljedećom slikom:

9
3.4. PROBLEMI

Problema u vezi korištenja JavaScript-a ima više. U praksi su najčešće vezani uz to da razni
internet preglednici ne podržavaju sve mogućnosti JavaScript-a, ili ih ne podržavaju na
standardom definiran način.

No veći problem od toga je da neki internet preglednici uopće ne podržavaju JavaScript ili da
je JavaScript onesposobljena od strane posjetitelja.

Situacija na polju preglednika danas je takva da većina današnjih proizvoda (IE, Firefox,
Opera,...) podržava većinu JavaScript verzija.

10
3.5. PRVI JAVASCRIPT PRIMJER

Otkako je prva knjiga za programiranje u C jeziku objavljena postalo je tradicionalno da prvi


primjer, odnosno prve riječi koje su ispisane na zaslonu budu „Hello World“, odnosno
„Zdravo Svijetu“. S tom tradicijom na umu prvi program koji je napravljen u JavaScript
jeziku je upravo bio taj primjer.

Koristeći svoj omiljeni urednik napravimo HTML(HyperText Markup Language) datoteku sa


sljedećim sadržajem:

<html>
<head>
<title>My First JavaScript Example</title>
</head>
<body>
<script type="text/javascript" language="JavaScript">
document.writeln( "Hello World" );
</script>
</body>

Pokrenite HTML datoteku u pregledniku koji podržava JavaScript i internetska stranica će


pokazivati tekst „Hello World“. Sve što ova skripta radi je da definira standardne HTML
oznake koje možemo vidjeti na HTML stranici i također definiran ugrađen JavaScript kod.

Sljedeći primjer proširuje „Hello World“ primjer tako da na stranici bude ispisano „Hello
World“ i postavljena jedna tipka, te da nam se pojave riječi „Goodbye cruel World“.

<html>
<head>
<title>My First JavaScript Example</title>
</head>
<body>
<script type="text/javascript" language="JavaScript">
document.writeln( "Hello World" );
</script>
<form>
<input type=button value="Press me" onClick="alert('Goodbye cruel world')">
</form>
</body>

11
</html>

Kad se stranica učita u našem Web pregledniku biti će kao i prošli primjer, ali ovaj put na
stranici će biti vidljiva jedna tipka koja kad je pritisnemo će pokazati prozorčić koji će
sadržavati riječi "Goodbye cruel world". Da bi napravili da nam skripta pokazuje ono što smo
opisali trebamo koristiti HTML <form> i <input> oznake, da nam tipka bude vidljiva na
stranici i da nam se poveže s „onClick“ događajem. Napravili smo da kad „onClick“ događaj
bude pokrenut, JavaScript prikaže izvršeni prozor.

12
4. ZAKLJUČAK

JavaScript je javno raspoloživ skriptni jezik, što bi značilo da nije potrebna licenca za njegovo
korištenje.

JavaScript koristimo zbog vizualnog usavršavanja stranica. Omogućava jednostavno


programiranje događaja, objekata, definiranje raznih akcija i funkcija na klijent računalu.
Široko je rasprostranjen i lako se uči, tako da s programiranjem u JavaScriptu neće imat puno
poteškoća onaj tko još nezna dobro programirat. JavaScript je jedan od najpopularnijih
skriptnih jezika i podržava ga većina pretraživača.

13
5. LITERATURA

Danny Goodman, Michael Morrison; JavaScrip Bible 6th Edition; Wiley Publishing,Inc.;
Indianapolis Indiana; 2007.

Emily Vander Veer; JavaScrip for Dummies 4th Edition; Wiley Publishing, Inc.; Indianapolis
Indiana; 2005.

Nicholas C. Zakas; JavaScrip for Web Developers; Wiley Publishing,Inc.; Indianapolis


Indiana; 2005.

David Flanagan; JavaScrip the Definitive Guide 5th Edition; O`Reilly; 2006.

Danny Goodman; JavaScrip Bible Gold Edition; Hungry Minds, Inc; New York; 2001.

14

You might also like