Kaip parašyti interaktyvią Voratinklio programytę, kuri būtų pakankamai greita? Toks klausimas nedavė ramybės nuo pat HTML aušros. 1995-ais Netscape (pirmoji firma įsigijusi „Java“ licenciją) nusprendė, kad reikia supaprastintos kalbos. Brendan Eich sukūrė kalbą, pavadintą „LiveScript“. „Sun“ ją pervadino į „JavaScript“, – ir ji įsiliejo į mases su „Navigator 2.0“. Ši kalba dar turi ECMAScript vardą, nes ją standartu pripažino ECMA.

Resursai:

ECMA: www.wcma.ch/-stand/ECMA-262.htm

Netscape: developer.netscape.com/docs/manuals/communicator/jsguide4

Microsoft „JScript“ atmainos aprašas: msdn.ms.com/scripting

Nemokama „JavaScript“ realizacija: www.mozilla.org/js/

Ypatybių blyksniai

Tai nėra „Java“ (kaip programavimo kalba), kurios pagrindas yra klasės. „JavaScript“ turi prototipų objektinę sistemą, kurioje nėra griežtos takoskyros tarp klasių ir objektų (kitos šio tipo kalbos yra ThingLab ir Self, žr. http://self.sunlabs.com). JavaScript neturi ir griežtos tipų kontrolės kompiliavimo metu.

JavaScript iliustraciją pradėsime faktorialo paskaičiavimo funkcija.

function factorial (N) {
if ((N > 100) || (N < 0) ) { return -1; } if (N == 0) { return 1; } return N * factorial (N-1); } Panaudojimas:

Prototipų objektinė sistema

JavaScript objektų sukūrimui yra naudojami konstruktoriai – tai funkcija, kuri priskiria reikšmes this kintamajam. Konstruktorius iškviečiamas naudojant new operatorių. Šiame pavyzdyje pateikiame konstruktorių Automobilio objektui kurti.

// Konstruktorius

function Automobilis (firma, modelis, metai, numeris) {

this.firma=firma;
this.modelis=modelis;
this.metai=metai;
this.numeris=numeris;
return this;

}

Panaudojimas:

Dabar pailiustruosime, kaip šiam objektui sukuriamas „country“ metodas, nustatantis, kurioje šalyje automobilis buvo pagamintas.

// Metodas

function country () {

if (this.firma == „Toyota“) { return „Japonija“ }
else if (this.firma == „BMW“) { return „Vokietija“ }
else if (this.firma == „Ford“) { return „JAV“ }
else { return „Nenustatyta“ }
}

Priskyrimas ir panaudojimas:

Toliau – prototipo savybė yra naudojama elgsenos perdavimui tarp objektų. Iliustruosime Toyota prototipu.

// Prototipas

function Toyota (modelis, metai, mileage) {
this.modelis=modelis;
this.metai=metai;
this.mileage=mileage;
}

Panaudojimas:

Kodėl JavaScript iškart tapo populiariu, o dauguma to meto eksperimentinių kalbų niekada neišplito toliau laboratorijos sienų? Ogi todėl, kad ji rado savo nišą – kaip Voratinklio klientų ir serverio pusių programavimo priemonė.

Laukiame Jūsų atsiliepimų, komentarų, papildymų šiai temai, naujų klausimų ir pasiūlymų.

Views All Time
Views All Time
4108
Views Today
Views Today
1
0 0