A Javascript programozási nyelv

Absztrakt adattípusok

Szintaxis

Osztályokat létrehozhatunk mint függvényt. A new operátorral példányosítva a függvényen belül a this-t használhatjuk, mint az aktuális objektumra mutató pointer.

// Osztály function osztalynev(a, b) { var u1 = a; this.v1 = b; this.tfv = function(x, y) { this.v1 = x; u1 = y; return u1*this.v1; } } // Példányosítás var fvo = new osztalynev(1, 2); var x = fvo.tfv(3,4); // Utólag is lehetőség van még adattagokkal és függvényekkel az objektumot kiegészíteni fvo.ujTag = 4; fvo.ujFuggveny = function(a) { this.ujTag = a; this.v1 = 2*a; u1 = 3*a; } fvo.ujFuggveny(25);

Láthatósági szabályok

Ahhoz, hogy lehetővé tegyük külső kód számára az osztály tagfüggvényeihez való hozzáférést, a this kulcsszót kell használnunk.

JavaScriptben nincsenek olyan módosítók mint a public, protected, private, de egyszerűen lehet szimulálni a private osztálytagokat. Ha az osztályon belül nem jegyezzük be this kulcsszóval a változót, akkor csak osztályon belül láthatjuk.

function Osztalynev() { var adat; // ez egy privát változó function _setAdat(a) { // privát függvény amit később láthatóvá teszünk adat = a; } function _getAdat() { // privát függvény amit később láthatóvá teszünk return adat; } this.setAdat = _setAdat; // itt tesszük a külvilág számára láthatóvá this.getAdat = _getAdat; // a már deklarált privát függvényeket } var obj = new Osztalynev(); obj.setAdat(5); alert(obj.getAdat());

Ekkor az Osztalynev osztály adat adattagja csak osztályon belül látható, _setAdat és _getAdat függvényei pedig a setAdat, getAdat osztálytagokon keresztül érhető el.