1.04. Nizovi u JavaScript-u
Nizovi se koriste za smeštanje više vrednosti u jednu promenljivu.
Kako se kreira niz
1. NAČIN: Kreiranje niza uz pomoć [ ] zagrada
Niz se može deklarisati tako što se eksplicitno nabroje elementi niza razdvojeni zarezima, unutar uglastih zagrada.
let niz = [1,2,3];
var ocene = [1, 2, 3, 4, 5];
let imena = ["Aca", "Marko", "Pera"];
var miks = [10, false, "Mika", 0.005];
var prazanNiz = [];
U JavaScript-u niz može da sadrži elemente različitih tipova !
Niz može sadržati i nedefinisane elemente koji se prave tako što se izostavi vrednost za taj element između zareza:
2. NAČIN: Kreiranje niza sa konstruktorom Array()
Drugi način za deklarisanje nizova je pomoću konstruktora Array(). Ovaj konstruktor se može pozvati na tri načina:
var niz = new Array(); // kreira prazan niz
var niz2 = new Array(1,2,3,"Maca"); // pravi niz od 4 elementa
var niz3 = new Array(5); // pravi niz od 5 elemenata, svaki je undefined
U JavaScript-u niz može imati proizvoljan broj elemenata i broj elemenata se može menjati u bilo kom trenutku.
Kako se pristupa elementima niza:
Elementu niza se pristupa pomoću operatora [ ], gde se unutar zagrada navodi
njegov indeks - ako je niz "običan"
niz[0] // Prvi član niza
niz[3] // Četvrti član niza
ili
njegov "ključ" - ako je niz "asocijativni"
niz["string koji predstavlja ključ"] - ovime se dobija vrednost za koji se navodu ključ unutar zagrada
Pogledajte primere u nastavku za malo bolja objašnjenja.
Kako se prolazi kroz niz:
NAPOMENA: u JavaScript-u niz može imati proizvoljan broj elemenata i broj elemenata se može menjati u bilo kom trenutku.
Koristiti for petlju, isto kao i u ostalim programskim jezicima, ako je u pitanju "običan" niz, i ako ste sigurni da nema nedefinisanih elemenata između onih koji su definisani
for(i=0; i<niz.length; i++) {
// rad sa niz[i]
}
U svakom slučaju, čak i ako niste sigurni da li su definisani svi elementi niza, može se koristiti:
ili rad sa for
ili rad sa forEach
Vežbe:
Kreirati web stranicu u kojoj će se raditi sa nizovima.
HTML:
Prvo postaviti četiri paragrafa - svaki sa različitim ID (p1, p2, p3, p4)
... kao na slici table iza dugmića

Dodati dugmiće za
- ispis svih elemenata niza
- dodavanje predmeta na kraj niza
- dodavanje predmeta na početak niza
- izbacivanje prvog predmeta iz niza
- izbacivanje poslednjeg elementa iz niza
... iza dugmeta je slika table gde se unosi deo dugmića

Zahtevi zadatka:
U prvom paragrafu je potrebno ispisati iz niza predmeti, korišćenjem metote toString()
U drugom paragrafu je potrebno ispisati iz niza predmeti, korišćenjem metote join(" * ")
U trećem paragrafu je potrebno sve učenike ispisati, zajedno sa njihovim pozicijama.
Klikom na bilo koji od dugmića potrebno je da se u četvrtom paragrafu ispiše sve što je ostalo u nizu predmeti.
JS:
na ovom času je nebitno da li imate poseban JavaScript fajl, ili skriptu na kraju web stranice - vaš izbor.....
Prvi niz je asocijativni: pozicija učenika u učionici. Ključ je oznaka računara, a vrednost je ime učenika koji sedi za tim računarom:
var pozicija = new Array();
pozicija["D03"] = "ucenik br.1";
pozicija["L03"] = "ucenik 2";
// vi unesite neka druga imena
Drugi niz se kreira tako da se odmah unose vrednosti (inicijalizacija) :
var Predmeti = ["Matematika","Geografija","Srpski","Programiranje"];
Kako se može doći do broja elemenata u nizu?
var brojPredmeta = predmeti.length;
var brojUcenika = pozicija.length;
...............
Ovde može da se vidi da se broj elemenata niza dobija na isti način kao u C# ili C++ ....
Pretvaranje niza u string
Moguće je!
Najčešće se koriste sledeća dva načina (metode):
- toString()
- join()
Metode se nad nizovima pozivaju tako što se navede naziv niza, zatim tačka, pa naziv metode. Neke metode mogu da imaju opcione parametre, a neke nemaju.
Metoda toString() će da sve elemente niza "prilepi" jedan za drugog
Metoda join() - ako se ne koriste nikakvi parametri, razdvojiće elemente zarezom
- ako se navede string unutar zadgrada onda će se taj string naći između elemenata niza kao separator
Kako je rađeno na času: pogledajte sliku table

!!!Broj elemenata u nizu može da se menja!!!
Metode sa kojima počinjemo da radimo:
push() - Dodavanje elemenata na kraj niza
pop() - izbacivanje elementa sa kraja niza
shift() - izbacivanje elementa sa početka niza
unshift() - dodavanje elementa na početak niza
.... ovo nisu jedine metode za dodavanje ili izbacivanje elemenata iz niza, ali o tome više na nekom od sledećih časova.
da se ne bi pisao programski kod, u nastavku je, iza dugmića slika table sa časa sa ilustracijom ovih primera


**