SlideShare a Scribd company logo
1 of 160
Java Script
Java Script
• Programski – skriptni jezik koji se izvšava u
web browser-u
• Koristi se za dodatnu funkcionalnost na web
stranama, za dinamičke web strane
• Jedna od čestih upotreba je provera
korisničkog unosa u web browser-u, pre slanja
korisničkih podataka na web server
• Java Script se kombinuje sa html code-om na
dva osnovna načina ili aspekta:
1. Može biti ptisutan na bilo kom delu html strane
2. Može da pristupa html elementima na web
strani preko DOM-a (Document Object Model)
ECMA script
• 1961 ECMA – European Computer
Manufacturers Association
• Osnovni zadatak je standardizacija u oblasti
ICT (Information Communication Technology) i
CE (Consumer Electronics)
• 1994 International, ali se ECMA zadržava iz
istorijskih razloga
• JavaScript je razvio Brendan Eich u Netscape-u
– Mocha -> LiveScript -> JavaScript
• Decembra 1995 Netscape i Sun Microsystems
zvanično objavljuju JavaSCript
http://www.ecma-
international.org/publications/standa
rds/Ecma-262.htm
Osnovne karakteristike JavaScript-a
• Objektno orijentisani jezik
• Nije nezavisan od svoje okoline, na pr.
specifikacija ne navodi kako se vrši ulaz ili izlaz
podataka
• Očekuje se da okruženje (web browser ali i
neka druga – Adobe programi, Open Office, itd)
u okviru koga radi JavaScript obezbedi objekte
za ulaz i izlaz
JavaScript je jednostavan –
korišćenje iz html - a
Drugi način deklaracije skripta
Multipurpose Internet Mail Extensions (MIME
Za starije browser-e
• <html>
– <body>
• <script type="text/javascript">
– <!-- document.write("Hello World!");
– //-->
• </script>
– </body>
• </html>
Html iz Java Script-a
Java script u zaglavlju
Java script u elementu body
Eksterni java script
Svojstva Java Script-a
• Java script je case sensitive
• Oznaka ; na kraju naredbe je opciona
• Sa ; se mogu napisati višestruke JavaScript
naredbe u istoj liniji
• Bez oznake ; JavaScript naredbe se moraju
pisati u posebnim linijama
• Blokovi u JavaScript-u između oznaka zagrada
{ i }, kao u C++-u, Java-i, PHP-u,… i drugim C –
olikim jezicima
• Blok predstavlja celinu – ekvivalentnu jednoj
naredbi
JavaScript blok
JavaScript blok 2
Komentari u JavaScript-u
• Komentar na kraju reda – linije je “//”
• Proizvoljni komentar između znakova “/*” i “*/”
– multi line comment
• Kao i u drugim programskim jezicima,
komentari služe za:
1. Opis programa običnim govornim tekstom
2. Privremeno isključivanje delova programa
tokom razvoja programa
// komentar
“/*” i “*/ komentari
Modifikovanje programa komentarom
Modifikovanje programa komentarom
JavaScript promenljive
• JavaScript nije strogo tipizirani jezik, tako da
deklaracija promenljivih nije obavezna
• Promenljiva x se PRVI put u programu može navesti
kao:
• x = 5;
• Tip promenljive se deklariše implicitno – preko
trenutno dodeljene vrenosti - script jezik
• Deklaracija promenljive x:
• var x = 5;
• x = “Hello World”;
• Tip podatka koji sadrži promenljiva može da se menja
u toku programa
• Ime promenljive je case sensitive i sastoji se od slova
(a – z, A – Z), cifara (0 – 9) i znaka “_” – underscore.
Prvi znak imena promenljive mora biti slovo ili “_”
Osnovni – ugrađeni tipovi podataka
• Undefined
• Null
• Boolean
• Number
• String
• Osim ovih osnovnih tipova postoje i objekti –
građeni i korisnički definisani o kojima će
kasnije biti reči
Operatori ++ i - - mogu biti prefiksni i postfiksni
Sabiranje brojeva i stringova
if (condition) { code to be executed if
condition is true }
if (condition) { code to be executed if condition is true }
else { code to be executed if condition is not true }
if (condition1)
{ code to be executed if condition1
is true }
else if (condition2)
{ code to be executed if condition2
is true }
else
{ code to be executed if condition1
and condition2 are not true }
If… else… random links
switch(n)
{
case 1: execute code block 1
break;
case 2: execute code block 2
break;
default: code to be executed if n
is different from case 1 and 2
}
Switch primer – objekat Date
Alert box
Alert box sa više linija
Confirm box
Confirm box rezultat – Google Chrome
Confirm box rezultat - Safari
Confirm box rezultat - SeaMonkey
Confirm box ispis teksta
Prompt box
Prompt box rezultat
JavaScript funkcije
Function arguments
Function arguments 2
Function return value
Function return with arguments
For loop
For loop headers
While loop
Do while loop
Break for
Continue for
For in loop
Try catch
Try catch 2
Throw
statement
On error
JavaScript OOP
• Ugrađeni – built in Java Script objekti
• Definisanje korisničkih – custom objekata
• Nema klasa, samo objekti, na kraju to je samo
script jezik!
• Svojstvo – atribut “length” objekta String
• <script type="text/javascript">
var txt="Hello World!";
document.write(txt.length);
</script>
• Rezultat: 12 – dužina, broj znakova
toUpperCase metod String objekta
• <script type="text/javascript">
var str="Hello world!";
document.write(str.toUpperCase());
</script>
• Rezultat je:
•
• HELLO WORLD!
Style strings u Java Script-u
String indexOf() method
String match() metod
String replace metod()
String creator svojstvo
String prototype svojstvo
String metodi 2
Date objekat
Date getTime() metod
Date setFullYear()
Date toUTCSTring() metod
Date getDay() metod
Live clock
Date metodi 2
Date
metodi 3
Objekat Array
Array For ... in
Array više dimenzija
Array concat() metod
Array join() podrazumevano
Array sort() literal (tekst)
Array sort() numeric
Sort numeric as literal
Sort numeric descending
Array pop()
Array push()
Array reverse()
Array shift()
Array unshift()
Array slice()
Array splice()
toSource() metod
Objekat Boolean
Boolean uslov
Boolean constructor
Boolean toString()
Boolean valueOf()
Math round()
Math random()
Math max()
Prevodjenje logaritama iz jedne
osnove u drugu
)
10
ln(
)
ln(
)
log(
)
10
ln(
)
log(
)
10
ln(
)
ln( )
log(
x
x
x
x x



Math LOG
JavaScript custom – korisnički objekti
Template za objekte – klasa?
Dodavanje metoda sablonu
JavaScript prototype
Objekat navigator
Objekat navigator 2
Objekat navigator 3
Navigator kolekcija plugins
Navigator svojstva
Submit sa prethodne strane
Encode / decode URI
Encode / decode URIcomponent
Escape / unescape function
Eval function
Infinity svojstvo
NaN - Not a Number svojstvo
Undefined svojstvo
Number MIN – MAX svojstva
Number + / infinity svojstvo
Java Script.ppt
Java Script.ppt
Java Script.ppt

More Related Content

Similar to Java Script.ppt

Programer Ivan Stolic VII3
Programer Ivan Stolic VII3Programer Ivan Stolic VII3
Programer Ivan Stolic VII3dulovci
 
Studija slučaja - phishing
Studija slučaja - phishingStudija slučaja - phishing
Studija slučaja - phishingBoban Lapcevic
 
Linux osnove prezentacija o linuxu na srpskom
Linux osnove prezentacija o linuxu na srpskomLinux osnove prezentacija o linuxu na srpskom
Linux osnove prezentacija o linuxu na srpskomkovacevsinisa
 
Linux osnove prezentacija o linuxu na srpskom
Linux osnove prezentacija o linuxu na srpskomLinux osnove prezentacija o linuxu na srpskom
Linux osnove prezentacija o linuxu na srpskomkovacevsinisa
 
Sibin Grasić - Najčešće greške WP developera
Sibin Grasić - Najčešće greške WP developeraSibin Grasić - Najčešće greške WP developera
Sibin Grasić - Najčešće greške WP developeraStartit
 
HTML skripta.pdf
HTML skripta.pdfHTML skripta.pdf
HTML skripta.pdfDaVu2
 
Dobra praksa u razvoju komponentne biblioteke
Dobra praksa u razvoju komponentne bibliotekeDobra praksa u razvoju komponentne biblioteke
Dobra praksa u razvoju komponentne bibliotekeMiloš Đekić
 
Dobra praksa u razvoju komponentne biblioteke
Dobra praksa u razvoju komponentne bibliotekeDobra praksa u razvoju komponentne biblioteke
Dobra praksa u razvoju komponentne bibliotekeGoran Rakic
 
Getting bigger with flask
Getting bigger with flaskGetting bigger with flask
Getting bigger with flaskJosipKatalinic
 
Napredne tehnike razvoja web aplikacija - Zend Framework
Napredne tehnike razvoja web aplikacija - Zend FrameworkNapredne tehnike razvoja web aplikacija - Zend Framework
Napredne tehnike razvoja web aplikacija - Zend FrameworkSaša Stamenković
 
Android vs iOS development
Android vs iOS developmentAndroid vs iOS development
Android vs iOS developmentVuk Nikolić
 
Sistemski softver i aplikativni programi
Sistemski softver i aplikativni programiSistemski softver i aplikativni programi
Sistemski softver i aplikativni programiJasmina Profil
 
Sistemski softver i aplikativni programi
Sistemski softver i aplikativni programiSistemski softver i aplikativni programi
Sistemski softver i aplikativni programiAleksandar Jovanovic
 
Pripreme za programiranje 8.
Pripreme za programiranje 8.Pripreme za programiranje 8.
Pripreme za programiranje 8.Brankica Jokić
 
Ljubav Flexa I PHP-a
Ljubav Flexa I PHP-aLjubav Flexa I PHP-a
Ljubav Flexa I PHP-aIvan Ilijasic
 
Prednosti Programiranja u PHP-u nrt-21-07
Prednosti Programiranja u PHP-u   nrt-21-07Prednosti Programiranja u PHP-u   nrt-21-07
Prednosti Programiranja u PHP-u nrt-21-07guest8bb552
 
Automatizacija u Front-end razvojnom procesu
Automatizacija u Front-end razvojnom procesuAutomatizacija u Front-end razvojnom procesu
Automatizacija u Front-end razvojnom procesuDalibor Gogic
 
Front-end development iz ugla .NET programera
Front-end development iz ugla .NET programera�Front-end development iz ugla .NET programera�
Front-end development iz ugla .NET programeraStartit
 

Similar to Java Script.ppt (20)

Programer Ivan Stolic VII3
Programer Ivan Stolic VII3Programer Ivan Stolic VII3
Programer Ivan Stolic VII3
 
Studija slučaja - phishing
Studija slučaja - phishingStudija slučaja - phishing
Studija slučaja - phishing
 
Linux osnove prezentacija o linuxu na srpskom
Linux osnove prezentacija o linuxu na srpskomLinux osnove prezentacija o linuxu na srpskom
Linux osnove prezentacija o linuxu na srpskom
 
Linux osnove prezentacija o linuxu na srpskom
Linux osnove prezentacija o linuxu na srpskomLinux osnove prezentacija o linuxu na srpskom
Linux osnove prezentacija o linuxu na srpskom
 
Web Servisi
Web ServisiWeb Servisi
Web Servisi
 
Sibin Grasić - Najčešće greške WP developera
Sibin Grasić - Najčešće greške WP developeraSibin Grasić - Najčešće greške WP developera
Sibin Grasić - Najčešće greške WP developera
 
HTML skripta.pdf
HTML skripta.pdfHTML skripta.pdf
HTML skripta.pdf
 
Dobra praksa u razvoju komponentne biblioteke
Dobra praksa u razvoju komponentne bibliotekeDobra praksa u razvoju komponentne biblioteke
Dobra praksa u razvoju komponentne biblioteke
 
Dobra praksa u razvoju komponentne biblioteke
Dobra praksa u razvoju komponentne bibliotekeDobra praksa u razvoju komponentne biblioteke
Dobra praksa u razvoju komponentne biblioteke
 
Getting bigger with flask
Getting bigger with flaskGetting bigger with flask
Getting bigger with flask
 
Napredne tehnike razvoja web aplikacija - Zend Framework
Napredne tehnike razvoja web aplikacija - Zend FrameworkNapredne tehnike razvoja web aplikacija - Zend Framework
Napredne tehnike razvoja web aplikacija - Zend Framework
 
Android vs iOS development
Android vs iOS developmentAndroid vs iOS development
Android vs iOS development
 
JavaCro'14 - Automatized testing with Selenium 2 – Juraj Ćutić and Aleksander...
JavaCro'14 - Automatized testing with Selenium 2 – Juraj Ćutić and Aleksander...JavaCro'14 - Automatized testing with Selenium 2 – Juraj Ćutić and Aleksander...
JavaCro'14 - Automatized testing with Selenium 2 – Juraj Ćutić and Aleksander...
 
Sistemski softver i aplikativni programi
Sistemski softver i aplikativni programiSistemski softver i aplikativni programi
Sistemski softver i aplikativni programi
 
Sistemski softver i aplikativni programi
Sistemski softver i aplikativni programiSistemski softver i aplikativni programi
Sistemski softver i aplikativni programi
 
Pripreme za programiranje 8.
Pripreme za programiranje 8.Pripreme za programiranje 8.
Pripreme za programiranje 8.
 
Ljubav Flexa I PHP-a
Ljubav Flexa I PHP-aLjubav Flexa I PHP-a
Ljubav Flexa I PHP-a
 
Prednosti Programiranja u PHP-u nrt-21-07
Prednosti Programiranja u PHP-u   nrt-21-07Prednosti Programiranja u PHP-u   nrt-21-07
Prednosti Programiranja u PHP-u nrt-21-07
 
Automatizacija u Front-end razvojnom procesu
Automatizacija u Front-end razvojnom procesuAutomatizacija u Front-end razvojnom procesu
Automatizacija u Front-end razvojnom procesu
 
Front-end development iz ugla .NET programera
Front-end development iz ugla .NET programera�Front-end development iz ugla .NET programera�
Front-end development iz ugla .NET programera
 

Java Script.ppt