V tej vadnici boste s pomočjo primerov spoznali večdimenzionalna polja JavaScript.
Večdimenzionalno polje je polje, ki vsebuje drugo polje. Na primer
// multidimensional array const data = ((1, 2, 3), (1, 3, 4), (4, 5, 6));
Ustvari večdimenzionalno matriko
Tukaj je opisano, kako lahko v JavaScript ustvarite večdimenzionalne nize.
Primer 1
let studentsData = (('Jack', 24), ('Sara', 23), ('Peter', 24));
2. primer
let student1 = ('Jack', 24); let student2 = ('Sara', 23); let student3 = ('Peter', 24); // multidimensional array let studentsData = (student1, student2, student3);
Tako primer 1 kot primer 2 ustvarita večdimenzionalno matriko z enakimi podatki.
Dostop do elementov polja
Do elementov večdimenzionalnega polja lahko dostopate s pomočjo indeksov (0, 1, 2…) . Na primer
let x = ( ('Jack', 24), ('Sara', 23), ('Peter', 24) ); // access the first item console.log(x(0)); // ("Jack", 24) // access the first item of the first inner array console.log(x(0)(0)); // Jack // access the second item of the third inner array console.log(x(2)(1)); // 24
Večdimenzionalno polje (v tem primeru x) si lahko predstavljate kot tabelo s 3 vrsticami in 2 stolpcema.

Dodajte element v večdimenzionalno polje
Za dodajanje elementov v večdimenzionalno matriko lahko uporabite metodo Array's push () ali indeksacijski zapis.
Dodajanje elementa zunanjemu polju
let studentsData = (('Jack', 24), ('Sara', 23),); studentsData.push(('Peter', 24)); console.log(studentsData); //(("Jack", 24), ("Sara", 23), ("Peter", 24)
Dodajanje elementa v notranje polje
// using index notation let studentsData = (('Jack', 24), ('Sara', 23),); studentsData(1)(2) = 'hello'; console.log(studentsData); // (("Jack", 24), ("Sara", 23, "hello"))
// using push() let studentsData = (('Jack', 24), ('Sara', 23),); studentsData(1).push('hello'); console.log(studentsData); // (("Jack", 24), ("Sara", 23, "hello"))
Za dodajanje elementa z določenim indeksom lahko uporabite tudi metodo Array's splice (). Na primer
let studentsData = (('Jack', 24), ('Sara', 23),); // adding element at 1 index studentsData.splice(1, 0, ('Peter', 24)); console.log(studentsData); // (("Jack", 24), ("Peter", 24), ("Sara", 23))
Odstranite element iz večdimenzionalnega polja
Z metodo Array's pop () lahko element odstranite iz večdimenzionalnega polja. Na primer
Odstranite element iz zunanjega polja
// remove the array element from outer array let studentsData = (('Jack', 24), ('Sara', 23),); studentsData.pop(); console.log(studentsData); // (("Jack", 24))
Odstranite element iz notranjega polja
// remove the element from the inner array let studentsData = (('Jack', 24), ('Sara', 23)); studentsData(1).pop(); console.log(studentsData); // (("Jack", 24), ("Sara"))
Z splice()
metodo lahko odstranite tudi element z določenim indeksom. Na primer
let studentsData = (('Jack', 24), ('Sara', 23),); // removing 1 index array item studentsData.splice(1,1); console.log(studentsData); // (("Jack", 24))
Ponavljanje nad večdimenzionalnim poljem
Če želite itirirati večdimenzionalno polje, lahko pregledujete večdimenzionalno polje z uporabo metode Array's forEach (). Na primer
let studentsData = (('Jack', 24), ('Sara', 23),); // iterating over the studentsData studentsData.forEach((student) => ( student.forEach((data) => ( console.log(data); )); ));
Izhod
Jack 24 Sara 23
Prva forEach()
metoda se uporablja za iteracijo nad zunanjimi elementi matrike, druga forEach()
pa za iteracijo po notranjih elementih matrike.
for… of
Zanko lahko uporabite tudi za ponovitev večdimenzionalnega polja. Na primer
let studentsData = (('Jack', 24), ('Sara', 23),); for (let i of studentsData) ( for (let j of i) ( console.log(j); ) )
Zanko for lahko uporabite tudi za iteracijo večdimenzionalnega polja. Na primer
let studentsData = (('Jack', 24), ('Sara', 23),); // looping outer array elements for(let i = 0; i < studentsData.length; i++)( // get the length of the inner array elements let innerArrayLength = studentsData(i).length; // looping inner array elements for(let j = 0; j < innerArrayLength; j++) ( console.log(studentsData(i)(j)); ) )