Jedna z dolezitych programovacich technik je pouzitie poli. Kazdy programovaci jazyk ich urcitym sposobom podporuje. Mozno, ze ste uz narazili na problem, v ktorom by Vam polia mohli pomoct. No, ked ste si prestudovali dokumentaciu Netscapu nikde ste o nich nenasli ani zmienku.
Co su to polia ? Mozno o nich povedat, ze je to viacero premennych v sebe. Povedzme, ze potrebujeme 10 premennych. Mozeme zacat s premennymi a,b,c.. No, bolo by to komplikovane hlavne v pripade, kedy by sme potrebovali mat 100 alebo viac premennych. Ked mame pole nazvane 'MyArray' obsahujuce 10 prvkov, tak mozeme jednoducho adresovat rozne prvky napr. MyArray[1], MyArray[2], MyArray[3]... (vacsina programovacich jazykov povazuje prvok[0] za prvy prvok, no v JavaScripte sa adresuje prvy prvok ako [1]). Takze ak chceme ulozit cislo 17 do prveho prvku, musime napisat MyArray[1]=17. Vidite, ze s poliami sa naraba skoro tak isto ako s obycajnymi premennymi. Ked chcete ulozit cislo 17 do vsetkych prvkov robi sa to tak:
for (var i=1;i<11;i++) MyArray[i]=17; |
Prikaz for hovori pocitacu kolkokrat sa ma opakovat vykonavanie prikazu, ktory sa nachadza za nim. Slucka for zacina s i=1. Naprv pocitac vykona prikaz MyArray[1]=17. Potom dojde k zvyseniu hodnoty i o 1 a potom sa vykona prikaz MyArray[2]=17. I sa zvysuje dovtedy, kym nedosiahne hodnotu 10. Vyraz i<11 v slucke for musi byt pravdivy, takze ked i dosiahne hodnotu 11, vyraz nie je pravdivy a slucka for konci.
Teraz si ukazeme funkciu na inicializaciu poli:
function initArray() { this.length = initArray.arguments.length; for (var i = 0; i < this.length; i++) this[i+1] = initArray.arguments[i]; } |
Nie je podstatne, ci chapete tuto funkciu, ale to ci ju viete vyuzit. Ked chcete vytvorit pole s 3 prvkami, staci napisat:
var MyArray= new initArray(17,18,19); |
Cisla 17,18,19 su priradene prvkom 1,2,3. Tak isto mozete do pola vlozit textove retazce:
var heyho= new initArray("To","je","pole"); |
Zmiesane polia nie je problem vytvorit:
var Mixedup= new initArray(17,"hej",103); |
Teraz si ukazeme priklad, ktory vypise obsah pola.
Zdrojovy text:
<script
language="JavaScript"> <!-- function initArray() { this.length = initArray.arguments.length; for (var i = 0; i < this.length; i++) this[i+1] = initArray.arguments[i]; } var Mixedup=
new initArray(17,"hej",103); |
V pripade, ze chcete vymazat obsah okna alebo ramca, zistite, ze sa to neda cez document.clear(). No vymazanie okna sa da realizovat takymto sposobom:
document.close(); document.open(); document.write("<P>"); |
Teraz si ukazeme skript, ktory bude umoznovat navigaciu medzi roznymi dokumentmi. Nejde o nic ine, ako o zname funkcie Back a Forward. Ked mate na stranke odkaz, ktory Vas dovedie na predchadzajucu stranku, je to nieco ine ako tlacitko v navigacnej liste Netscapu. Tlacitko v Netscape Vas hodi na predchadzajucu stranku v historii.
Zdrojovy text:
<html> <body> <FORM NAME="buttonbar"> <INPUT TYPE="button" VALUE="Spat" onClick="history.back()"> <INPUT TYPE="button" VALUE="JavaScript DESTINATION" onClick="location='index.html'"> <INPUT TYPE="button" VALUE="Dopredu" onCLick="history.forward()"> </FORM> </body> </html> |
Takisto je mozne napisat history.go(-1) a history.go(1).