JavaScript naredbe
1
3
Kori{}enje
operatora, naredbi
i funkcija
ovom poglavlju nastavljamo predstavljanje JavaScript jezika. Obradi}ete sve
operatore koje JavaScript podr`ava i nau~i}ete kako se izrazi izra~unavaju.
Nau~i}ete da koristite JavaScript programske naredbe, da pi{ete proste skriptove koji
demonstriraju upotrebu svake od tih naredbi i da kreirate i pozivate funkcije. Kada
zavr{ite ovo poglavlje mo}i }ete da napi{ete JavaScript skriptove koji koriste opera-
tore i naredbe JavaScripta za izvr{avanje razli~itih vrsta izra~unavanja.
p o g l a v l j e
U
Po~etak rada sa JavaScriptom
DEO I
Operatori i izrazi
U prethodnom poglavlju koristili ste neke od osnovnih operatora koje obezbe|uje JavaScript.
Ovo uklju~uje kori{}enje + operatora sa stringovima i numeri~kim tipovima i operator dodele
vrednosti = . U ovom odeljku bi}e predstavljeni svi operatori koje JavaScript pod`ava, koji su
organizovani po slede}im kategorijama:
l
aritmeti~ki operatori
l
logi~ki operatori
l
operatori pore|enja
l
operatori stringova
l
operatori za manipulaciju bitovima
l
operatori dodele
l
uslovni operatori.
Zapo~nimo razja{njavanje terminologije. Operator se koristi za transformisanje jedne, ili vi{e
vrednosti u jednu rezultuju}u vrednost. Vrednosti na koje se operator primenjuje nazivaju se
operandi. Kombinacija operatora i njegovih operanada poznata je kao izraz.
Izrazi se izra~unavaju da bi se odredila sama vrednost izraza, koja predstavlja rezultat primene
operatora nad operandima. Neki operatori, kao, na primer, operator (dodele) = , kao ishod daju
vrednost koja se dodeljuje promenljivoj. Drugi proizvode vrednost koja se mo`e koristiti u
drugim izrazima.
N A P O M E N A
Za neke operatore, kao {to je * operator mno`enja, redosled operanada nije va`an - na primer,
x * y =
y
* x predstavlja ta~an izraz za sve cele i realne brojeve. Drugi operatori, kao {to je + (konkatenacija stringo-
va) operator, daju razli~ite rezultate za razli~ite redoslede svojih operanada. Na primer,
ab+cd
nije isto
{to i
cd+ab
.
n
Unarni operatori se koriste samo sa jednim operandom. Na primer, unarni operator ! se pri-
menjuje na logi~ku vrednost i vra}a logi~ku not vrednost te vrednosti. Ve}ina JavaScript operato-
ra predstavlja
binarne
operatore, koji imaju po dva operanda. Jedan primer binarnog operatora je
operator * (mno`enja), koji se koristi za izra~unavanje proizvoda dva broja. Na primer, izraz 7 *
6 se izra~unava kao 42 primenom * operatora nad operandima 7 i 6.
Do sada smo se bavili samo prostim izrazima. Slo`eniji izrazi mogu da se naprave kombinovan-
jem prostih unarnih i binarnih izraza. Da biste izra~unali slo`ene izraze, morate da ih ras~lanite
na njihove komponente unarnih i binarnih izraza, primenjuju}i pravila redosleda, ili prioriteta
(na primer, izra~unavanjem grupa pre njihovog sabiranja, ili mno`enja). Nau~i}ete vi{e o ras~lan-
javanju izraza u odeljku Prioritet operatora.
2

Po~etak rada sa JavaScriptom
DEO I
Tabela 3.3 Operatori pore|enja
Operator
Opis
==
jednako
===
strogo jednako
!=
nije jednako
!==
strogo nije jednako
<
manje
<=
manje, ili jednako
>
ve}e
>=
ve}e, ili jednako
N O V O
Operatori jednako (
==
) i nije jednako (
!=
) vr{e konverziju tipa pre provere jednakosti. Na primer,
5
== 5
se izra~unava kao true. Operatori strogo jednako (
===
) i strogo nije jednako (
!==
) ne vr{e konverziju tipa
pre provere jednakosti. Na primer,
5 === 5
se izra~unava kao false, a
5 !== 5
vra}a true. Operatori
strogo jednako (
===
) i strogo nije jednako (
!==)
su deo ECMAScript 1 standarda. Oni su uvedeni u
Navigatoru samo za JavaScript 1.3 i podr`ali su ih Navigator 4.06 i kasniji. Tako|e su ih podr`ali Internet
Explorer 4 i kasniji.
n
U P O Z O R E N J E
Ako je
LANGUAGE
atribut <
SCRIPT
> taga postavljen na
JavaScript1.2
, Navigator 4 (i kasniji) tretiraju
operator jednakosti (
==
) kao operator stroge jednakosti. Na primer,
5
== 5
se izra~unava kao false. Ovo
predstavlja gre{ku Navigatora.
n
String operatori
String operatori se koriste za izvo|enje operacija nad stringovima. JavaScript trenutno podr`ava
samo operator string konkatenacije +. On se koristi za spajanje dva stringa nadovezivanjem. Na
primer, ab + cd proizvodi abcd.
Operatori za manipulaciju bitovima
Operatori za manipulaciju bitovima sprovode operacije nad vredno{}u predstavljenu bitovima,
kao {to su pomeranje bitova ulevo, ili udesno. Operatori za manipulaciju bitovima koje podr`ava
JavaScript nalaze se u tabeli 3.4.
Tabela 3.4 Operatori za manipulaciju bitovima
Operator
Opis
&
I
ð
ILI
^
ekskluzivno ILI
4
5
Kori{}enje operatora, naredbi i funkcija
POGLAVLJE 3
<<
pomeranje ulevo
>>
pomeranje udesno sa ~uvanjem znaka
>>>
pomeranje udesno sa punjenjem mesta najve}e te`ine nulama
Operatori dodele
Operatori dodele
se koriste za a`uriranje vrednosti promenljive. Neki operatori dodele se kombin-
uju sa drugim operatorima, da bi sproveli prora~un nad vredno{}u koja se nalazi u promenljivoj
i da, potom, a`uriraju promenljivu novom vredno{}u. Operatori dodele koje podr`ava JavaScript
nalaze se u tabeli 3.5.
Tabela 3.5 Operatori dodele
Operator
Opis
=
Postavlja promenljivu sa leve strane operatora
=
na vrednost izraza sa
njegove desne strane.
+=
Uve}ava promenljivu sa leve strane operatora
+=
za vrednost izraza sa
njegove desne strane. Kada se koristi sa stringovima vrednost sa desne
strane se nadovezuje na vrednost promenljive sa leve strane operatora
+=
.
-=
Umanjuje promenljivu sa leve strane operatora
-=
za vrednost izraza sa
njegove desne strane.
*=
Mno`i promenljivu sa leve strane operatora
*=
sa vredno{}u izraza sa
njegove desne strane.
/=
Deli promenljivu sa leve strane operatora
/=
sa vredno{}u izraza sa njegove
desne strane.
%=
Izdvaja moduo promenljive sa leve strane operatora
%=,
koriste}i izraz sa
njegove desne strane.
<<=
Pomera ulevo promenljivu sa leve strane operatora
<<=,
upotrebljavaju}i
vrednost izraza sa njegove desne strane.
>>=
Sprovodi pomeranje udesno sa zadr`avanjem znaka promenljive sa leve
strane operatora
>>=,
koriste}i vrednost izraza sa njegove desne strane.
>>>=
Sprovodi pomeranje udesno sa punjenjavanjem mesta najve}e te`ine
nulama promenljive sa leve strane operatora
>>>=,
koriste}i vrednost
izraza sa njegove desne strane.
&=
Sprovodi logi~ko I nad bitovima promenljive sa leve strane operatora
&=
, koriste}i vrednost izraza sa njegove desne strane.
ð
=
Sprovodi logi~ko ILI nad bitovima promenljive sa leve strane operatora
ð
=
, koriste}i vrednost izraza sa njegove desne strane.
^=
Sprovodi ekskluzivno ILI nad bitovima promenljive sa leve strane operatora
^=
, koriste}i vrednost izraza sa njegove desne strane.

7
Kori{}enje operatora, naredbi i funkcija
POGLAVLJE 3
Listing 3.1 JavaScript operatori (ch03-01.htm)
<html>
<head>
<title>JavaScript Operatori</title>
</head>
<body>
<h1>JavaScript Operatori</h1>
<table BORDER=2 CELLPADDING=4 ALIGN=CENTER>
<tr><td>Category</td>
<td>Operator</td>
<td>Description</td>
<td>Usage Example</td>
<td>Value/Result</td></tr>
<tr><td>String</td>
<td>+</td>
<td>concatenation</td>
<td>"Java" + "Script"</td>
<td><script><!
document.write(Java+Script)
// ></script>
</td></tr>
<tr><td ROWSPAN=10>Arithmetic</td>
<td>+</td>
<td>addition</td>
<td>2 + 3</td>
<td><script><!
document.write(2+3)
// ></script>
</td></tr>
<tr><td ROWSPAN=2>-</td>
<td>subtraction</td>
<td>6 - 4</td>
<td><script><!
document.write(6-4)
// ></script>
</td></tr>
<tr><td>unary negation</td>
<td>-9</td>
<td><script><!
document.write(-9)
// ></script>
</td></tr>
<tr><td>*</td>
<td>multiplication</td>
<td>3 * 4</td>
<td><script><!
document.write(3*4)
// ></script>
</td></tr>
<tr><td>/</td>
<td>division</td>
<td>15/3</td>
<td><script><!
document.write(15/3)
Ovaj materijal je namenjen za učenje i pripremu, ne za predaju.
Slični dokumenti