|
Andmete organiseerimiseks kasutatakse Javascriptis objekte. Objekt on kogum muutujatest (parameetritest, omadustest) ja funktsioonidest (meetoditest). Omadusteks võivad olla kas Javascripti muutujad või teised objektid. Javascripti programmides saab vajaduse korral moodustada soovikohaseid objekte ning kasutada ka sisseehitatud objekte. Sisseehitatud objektid on: - Array (massiiv)
- Date (kuupäevaobjekt)
- String (tekstiobjekt)
- Math (matemaatikaobjekt)
Seoses veebilehitsejaga ja selle aknas kuvatava veebilehega tekivad nn brauseri objektid - window
- navigator
- frames
- location
- history
- document
Iga dokument võib omakorda sisaldada mitmeid objekte Kõik need objektid koos moodustavad hierarhia. Dokumendiga seotud objektide hierarhia moodustab objekti dokument mudeli (DOM - document object model) MoodustamineObjekti mooduistamiseks saame kasutada initsialisaatorit: objekti_nimi={omadus1:väärtus1, omadus2:väärtus2, ...}
Kui on vaja modoustada objekt opilased omadustega enimi, pnimi, vanus, elukoht, siis teeme seda järgmiselt... opilane1=(enimi: "Einar", pnimi:"Kootikumidele", vanus:20, elukoht:"Haapsalu");
Uue objekti võib moodustada ka konstrueerimisfunktsiooni ja operaatori new abil. Konstrueerimisfunktsioon määrab objekti struktuuri. Võtmesõna this kasutatakse funktsiooni sees jooksva objekti omadustele väärtuste määramiseks - seega saab objekti opilased jaoks moosustada konstrueerimisfunktsiooni järgmiselt... function opilased(enimi,pnimi,vanus,elukoht) { this.enimi = enimi; this.pnimi = pnimi; this.vanus = vanus; this.elukoht = elukoht; }
Näitena toodud konstrueerimisfunktsiooni opilased ja operaatori new abil on moodustatud objektid opilane1, opilane2 ja opilane3. opilane1=new opilased("Einar", "Kootikumidele", 20, "Haapsalu"); opilane2=new opilased("Karin", "Eegreid", 22, "Pärnu"); opilane3=new opilased("Ülle", "Doos", 18, "Tallinn");
Objektiga seotud funktsioonid on meetodid. Objekti meetodid panankse kirja avaldisega object.method.Koodi objekti opilane jaoks võiks näitena moodustada meetodi kuva(), mis prindib õpilaste nimekkirja function kuva() { var nimekiri=this.enimi+" "+this.pnimi+", "+this.vanus+" - "+this.elukoht; document.write(nimekiri); }
meetodi võib panna konstrueerimisfunktsiooni: function opilased(enimi,pnimi,vanus,elukoht) { this.enimi = enimi; this.pnimi = pnimi; this.vanus = vanus; this.elukoht = elukoht; this.kuva = kuva; }
Meie programm moodustab objekti opilased ja sellesse kuuluvad objektid opilane1, opilane 2 ja opilane3. Avaldisega opilane.kuva pöördutakse funktsioon kuva() poole. Kogu kood: Objekti moodustamine <html> <head> <title>Moodustamine</title> <script type="text/javascript"> //konstrueerimisefunktsioon function opilased(enimi,pnimi,vanus,elukoht) { this.enimi = enimi; this.pnimi = pnimi; this.vanus = vanus; this.elukoht = elukoht; this.kuva = kuva; } //objekti moodustamine opilane1=new opilased("Einar", "Kootikumidele", 20, "Haapsalu"); opilane2=new opilased("Karin", "Eegreid", 22, "Pärnu"); opilane3=new opilased("Ülle", "Doos", 18, "Tallinn"); //õpilaste nimekirja kuvamise funktsioon function kuva() { var nimekiri=this.enimi+" "+this.pnimi+", "+this.vanus+" - "+this.elukoht; document.write(nimekiri); } document.write("<h1>Õpilased</h1>"); document.write("<hr />"); opilane1.kuva(); //selle avaldisega pöördume funktsiooni poole kuva() document.write("<hr />"); opilane2.kuva(); document.write("<hr />"); opilane3.kuva(); document.write("<hr />"); </script> </head> <body> </body> </html>
|