1. Beágyazhatjuk az oldalba:
A fenti helyett más megadási módok is léteznek:
Megadhatjuk a verziószámot is. Pl.: 1.7, vagy 1.8.1, vagy 1.8.5
Az E4X XML kezelési (és egyeb) lehetőséggel egészíti ki a Javascript nyelvet.
"Régimódi" megadási lehetőség verziószámmal, vagy anélkül.
A beágyazás történhet:
A <head>-be (pl.: függvények esetében)
A <body>-ba
2. Írhatjuk a kódot külső file-be.
3. Van amikor elhagyhatjuk a script tag-et.
Megjegyzés: Létezik a Javascript-nek egy úgynevezett strict módja is. Amennyiben
ezt szeretnénk használni, a script-ünk első sorát a "use strict"
utasítással kell kezdenünk. Amennyiben csak függvény szinten szeretnénk
a strict módot használni, akkor elég a függvény első sorába beírni
a "use strict" sort.
Amit a strict mód nyújt nekünk:
Változó létrehozása:
Egy változót a var kulcsszóval deklarálunk, azaz hozunk létre.
Ezután megadjuk a változó nevét, majd egy egyenlőségjel után az értékét.
Megjegyzés: A változó neve kis- és nagybetűket,
számot, és aláhúzást tartalmazhat csak, valamint nem kezdődhet számmal.
Természetesen a változó értékének megadása nem kötelező. Ilyen esetben a változó értéke definiálatlan lesz (undefined).
Pl.:Változókat egymás után is létrehozhatunk, vesszővel elválasztva. Ilyenkor ha akarjuk definiáljuk őket, ha nem, akkor nem.
Pl.:Megjegyzés: Vannak bizonyos szavak, melyeket nem adhatunk meg változó- vagy függvénynévnek. Ezeket hívjuk foglalt szavaknak. Ezek a következők:
abstract | boolean | break | byte |
case | catch | char | class |
const | continue | debugger | default |
delete | do | double | else |
enum | export | extends | false |
final | finally | float | for |
function | goto | if | implements |
import | in | instanceof | int |
interface | long | native | new |
null | package | private | protected |
super | switch | synchronized | this |
throw | throws | transient | true |
try | typeof | var | void |
volatile | while | with |
Megjegyzés: Ezeken a szavakon kívül az egyes objektumok, azok tulajdonságainak és metódusainak neveit sem ajánlott használni!
Nézzük meg, hogy a Javascript milyen típusú változókat tud kezelni.
Elsőként az úgynevezett primitív típusokat nézzük meg. Ezek NEM objektumok. Javascriptben a következő 5 primitív, avagy elemi típusok állnak rendelkezésünkre:Nézzük meg sorba az adattípusokat
1. Number
A Javascript szám típusa. Számok tárolására használjuk. Mind egész, mind pedig lebegőpontos számok tárolására alkalmas.2. String
A String a Javascript szöveg típusa. Szöveg tárolására használjuk.
Egy string a karakterek számától függő méretű helyet foglal a memóriában.
A stringet aposztróf vagy idézőjelek közé tesszük.
Ha a szövegben szeretnénk idézőjelet vagy aposztrófot megjeleníteni, azt a következőképp tehetjük
Pl.:Tehát vagy keverjük az aposztrófos és idézőjeles jelölést, vagy escape-eljük az adott speciális jelentéssel bíró karaktereket. Ha visszapert írunk az aposztróf, vagy idézőjel elé, azzal feloldjuk a speciális jelentését.
Az összes string literálban előforduló speciális karakter:
' | védett karakter |
" | védett karakter |
\ | védett karakter |
\b | törlés |
\t | tabulátor |
\n | új sor |
\r | kocsi vissza |
\f | lapdobás |
Amennyiben ezeket a speciális karaktereket szeretnénk szimpla szövegként megjeleníteni, úgy egy \ karaktert kell eléjük tennünk.
3. Boolean
A Boolean a Javascript logikai típusa. Csak két értéket vehet fel:Boolean-nál az értéket NEM kell idézőjelek közé tenni.
4. Undefined
Azaz definiálatlan. Ha egy változót deklarálunk, azaz létrehozzuk, de nem definiáljuk, azaz nem adunk neki értéket, akkor undefined lesz.
5. Null
A null egy speciális érték, amely azt jelzi, hogy az adott változó üres. Eleinte zavaros, hogy mi a különbség az undefined és a null között, de a későbbiekben majd nézünk rá példát, és mindenki leszűrheti a konklúziót. Ha valaminek null értéket szeretnénk adni, szintén nem kell idézőjelek közé tenni.
Ha különböző típusú adatokon végzünk aritmetikai műveleteket, akkor a Javascript automatikusan elvégzi a típuskonverziót a következők szerint:
Típuskonverzió |
---|
String + Number = String |
String + Boolean = String |
Boolean + Number = Number |
Number - String = Number |
Number - Boolean = Number |
Összehasonlító operátorok | |
---|---|
== | Egyenlőség vizsgálata |
!= | Egyenlőtlenség vizsgálata |
=== | érték- és típusegyenlőség vizsgálata |
!== | Típusegyenlőtlenség vizsgálata |
> | Nagyobb-e |
>= | Nagyobb egyenlő-e |
< | Kisebb-e |
<= | Kisebb egyenlő-e |
Aritmetikai operátorok | |
---|---|
+ | összeadás |
- | Kivonás |
* | Szorzás |
/ | Osztás |
% | Maradékos osztás |
++ | Incrementálás |
-- | Decrementálás |
értékadó operátorok | |
---|---|
= | Legyen egyenlő |
+= | összevont operátor: a = a + b helyett a += b |
-= | összevont operátor: a = a - b helyett a -= b |
*= | összevont operátor: a = a * b helyett a *= b |
/= | összevont operátor: a = a / b helyett a /= b |
%= | összevont operátor: a = a % b helyett a %= b |
<<= | összevont operátor: a = a << b helyett a <<= b |
>>= | összevont operátor: a = a ;>> b helyett a >>>= b |
>>>= | összevont operátor: a = a >>> b helyett a >>>= b |
&= | összevont operátor: a = a & b helyett a &= b |
|= | összevont operátor: a = a | b helyett a |= b |
^= | összevont operátor: a = a ^ b helyett a^= b |
[]= | összevont operátor: a = b, b = d helyett [a,b]=[c,d] |
Logikai operátorok | |
---|---|
&& | Logikai éS |
|| | Logikai VAGY |
! | Tagadás |
Bitszintű operátorok | |
---|---|
& | AND (éS) |
| | OR (VAGY) |
^ | XOR (Kizáró VAGY) |
~ | NOT (Tagadás) |
<< | Bitszintű balra eltolás |
>> | Bitszintű jobbra eltolás |
>>> | Előjel nélküli jobbra eltolás |
Különleges operátorok | |
---|---|
. | Objektum tulajdonságának, metódusának elérése |
[] | Objektum tulajdonságainak "tömbszerű" elérése |
delete | elemek törlése |
in | Objektum bejárása |
instanceof | Példánya-e adott objektumnak |
new | új objektum létrehozása |
this | Aktuális objektum elérése |
?: | Feltételes értékadás |
typeof | Típus lekérdezése |
void | Visszatérési érték kiküszöbölése |
Operátorok precedencia szintjei | |
---|---|
1 | ()
[] function() |
2 | !
~ - ++ -- new typeof void delete |
3 | *
/ % |
4 | +
- |
5 | <<
>>> >> |
6 | <
<= > >= |
7 | ==
!= |
8 | & |
9 | ˆ |
10 | | |
11 | && |
12 | || |
13 | ? |
14 | =
+= -= *= /= %= <<= >>>= >>= &= ˆ = |= |
15 | , |
//Feltételes szerkezet
if (feltétel) { utasításokHaIgaz;
}
//Feltételes szerkezet else ággal
if (feltétel) { utasításokHaIgaz;
}
else { utasításokHaHamis;
}
//feltételes szerkezet else if ággal
if (feltétel) { utasításokHaIgaz;
}
else if{ utasításokHaIgaz;
}
...
else { utasításokHaHamis;
}
//Feltételes értékadás
result = feltétel ? érték1 : érték2;
//Számlálós ciklus
for ([ciklusváltozó kezdőértéke]; [feltétel]; [lépésköz]) { utasítások;
}
//For in ciklus objektumok bejárására
for (var in object) { utasítások;
}
//For each ciklus tömbök bejárására
for each ([var] változóNeve in objektumReferencia) { utasítások;
}
//Objektumok tulajdonságainak elérése
with (objektumReferencia) { utasítások;
}
//Hátultesztelős ciklus
do { utasítások;
} while (feltétel)
//Elöltesztelős ciklus
while (feltétel) { utasítások;
}
//Visszatérési érték
return [érték];
//Többirányú elágazásos szerkezet
switch (kifejezés) { case értékN :
utasítások;
[break];
... [default :
utasítások];
}
//Cimkék létrehozása vezérlés átadásához
label :
continue [cimke];
break [cimke];
//Kivételkezelés OO módra
try { utasítások ahol hiba lehet;
}
catch (hibaInformáció) { utasítások melyek lefutnak ha hiba volt a try blokkban;
}
[finally { utasítások melyek mindenképp lefutnak;
}]
//Kivétel kiváltása
throw érték;
//Függvény szintaxisa
function függvényNeve ([paraméter1], [parametér2], ... [paraméterN]){ utasítások;
[return érték];
}
Esemény | Hol használhatjuk? |
---|---|
abort | object |
blur | window, button, text, password, label, select, textarea |
change | text, password, textarea, select |
click | Minden elemre |
error | window, frameset, object |
focus | window, button, text, password, label, select, textarea |
keydown | text, password, textarea |
keypress | text, password, textarea |
keyup | text, password, textarea |
load | window, frameset, object |
mousedown | Minden elemre |
mousemove | Minden elemre |
mouseout | Minden elemre |
mouseover | Minden elemre |
mouseup | Minden elemre |
reset | form |
resize | window |
scroll | window |
select | text, password, textarea |
submit | form |
unload | window, frameset |
Tulajdonságok | Metódusok |
---|---|
constructor | concat(tömb2) |
length | every(függvény[, objektum]) |
prototype | filter(függvény[, objektum]) |
forEach(függvény[, objektum])
indexOf(függvény[, objektum]) join("karakter") lastIndexOf(függvény[, objektum]) map(függvény[, objektum]) pop() push() reduce() reduceRight() reverse() shift() slice(i,[j]) some(függvény[, objektum]) sort(összehasonlító függvény) splice(i,j[,értékek]) toLocaleString() toString() unshift() |