Pole, ať už v javascriptu nebo i jinde, je skupina prvků navzájem si podobných. Pole má své jméno a jeho prvky jsou číslovány postupně od 0. Místo číslování se dají prvky té pojmenovat.
Deklarace pole v javascriptu je možná hned několika způsoby. Ukážeme si tři možné cesty, jak deklarovat pole.
Pomocí příkazu new Array vytvoříme pole a mezi závorkami deklarujeme jednotlivé prvky. V příkladu je vytvořeno pole (jmeno_pole) se třemi prvky.
var jmeno_pole = new Array("Nymburk", "Poděbrady", "Sadská");
Druhý způsob vytvoření pole je o něco jednodušší, stačí napsat mezi závorky ([ ]) jednotlivé prvky.
var jmeno_pole = ["Nymburk", "Poděbrady", "Sadská"];
Tento způsob je vhodný pro vytvoření pole, které nebude hned v čase vytvoření naplněno jednotlivými prvky. Pole pak například naplněno až v průběhu programu. Nejprve si tedy vytvoříme pole a to prázdným příkazem new Array(). Pak můžete naplnit pole buďto pomocí číselných indexů, nebo pomocí pojmenování.
var jmeno_pole = new Array(); var jmeno_pole[1] = ["Nymburk"]; var jmeno_pole[2] = ["Praha"]; var jmeno_pole[30]= ["Sadská"]; var jmeno_pole["pod"] = ["Poděbrady"]; var jmeno_pole["hk"] = ["Hradec Králove"];
Přístup k prvkům se provádí přes jeho index nebo jméno. Nyní si ukážeme, jak přistoupit k prvkům ze třetího způsobu deklarace. Příklad vypíše prvek s indexem 1(Nymburk) a prvek se jménem pod(Poděbrady).
document.write(jmeno_pole[1]) // vypíše Nymburk document.write(jmeno_pole["pod"]) // vypíše Poděbrady
Pole můžete projít například pomocí for cyklu, jak to ukazuje následující příklad.
for(i=0;i<jmeno_pole.length;i++){
document.write(jmeno_pole[i] +" "+"\n");
}
Nebo je možné pole projít pomocí for cyklu, který v sobě obsahuje příkaz in. Ten říká, že se projde vše, co je v uloženo v poli(jmeno_pole). Velice vhodné, pokud nepoužíváte číselné indexy.
for (var promenna in jmeno_pole)){
document.write (jmeno_pole[promenna]);
}
V minulém příkladu je použit funkce jmeno_pole.length(), který vrací počet prvků v poli.
document.write(jmeno_pole.length);
Javascript dovoluje pomocí metoda reverse() obrátit pořadí prvků v poli.
var jmeno_pole = ["Nymburk", "Poděbrady", "Sadská"]; var jmeno_pole2= pole.reverse(); //v poli2 budou prvky seřazeny Sadská, Poděbrady, Nymburk;
Seřazení všech prvků zajistí metoda sort(). Nejlepe se to dá asi ukázat na následujícím příkladu.
pole = new Array("c","a","f","b","d");
pole.sort(); // pole je teď seřazeno takto: "a","b","c","d","e","f"
Přidání prvku je jednoduché, stačí vložit do prvku pole, který bude mít index o jedničku větší, než je zatím nejvyšší použitý index prvku pole, nějaký obsah.
var jmeno_pole = new Array("Nymburk", "Poděbrady", "Sadská");
jmeno_pole[3] = "Praha";
document.write(jmeno_pole[3]); //vypise Praha
var jmeno_pole = new Array("Nymburk", "Poděbrady", "Sadská");
jmeno_pole.push("Praha"); //přidá jednu hodnotu na konec
jmeno_pole.push("Praha","Bratislava") //přidá dva prvky
var jmeno_pole = new Array("Sadská");
jmeno_pole.unshift("Nymburk", "Poděbrady") //přidá dva prvky na začátek
//a prvek Sadská posune
K odstranění se dá zase použít několik metod. Pár si jich tu ukážeme.
var jmeno_pole = ["Nymburk", "Poděbrady", "Sadská"]; jmeno_pole.shift(); document.write(jmeno_pole[0]); //vypíše Poděbrady
var jmeno_pole = ["Nymburk", "Poděbrady", "Sadská"]; jmeno_pole.pop(); //vyhodí "Sadská"
var jmeno_pole = ["Nymburk", "Poděbrady", "Sadská"]; jmeno_pole.splice(0); //vyhodi prvek na nulté pozici "Nymburk" jmeno_pole.splice(1); //vyhodi prvek na prvé pozici "Poděbrady"