XUL – EcmaScript

2005/03/16

EcmaScript je vlastne normovanou verziou jazyka, ktory vznikol z JavaScriptu. Mozilla podporuje EcmaScript verzie 3.

Objektový model v EcmaScripte (262).

V EcmaScripte neexistuje koncept triedy.

Tvorba novych instancii

Explicitne vytvaranie objektov

var person = new Object;
person.firstName = "John";
person.secondName = "Doe";

„Inline" ci pristup cez literal

var obj = { foreground:"red", background:"blue" }

Vsimnime si syntax:

Prototypy v ulohe tried

Na vytvaranie kvazi-tried sa pouzivaju „prototypy". Protyp specifikuje implicitne hodnoty pre metody a datove cleny novych instancii.

// tato funkcia je vlastne konstruktorom triedy Person
function Person() {
  print('Constructing new person...');
}

// Objekt.prototyp je vlastne kvazi-trieda
Person.prototype = {
  firstName: "John",
  secondName: "Doe"
}

// vytvorenie novej instancie
var p = new Person();
// print the default data field values
print(p.firstName);
print(p.secondName);

// set a value for data field
p.firstName = "Michael";
print(p.firstName);

// make a new instance, its data fields have default values specified in prototype
var q = new Person();
print(q.firstName);
print(q.secondName);
>> Home