JavaScript flerdimensjonalt array

I denne veiledningen vil du lære om JavaScript flerdimensjonale matriser ved hjelp av eksempler.

En flerdimensjonal matrise er en matrise som inneholder en annen matrise. For eksempel,

 // multidimensional array const data = ((1, 2, 3), (1, 3, 4), (4, 5, 6));

Lag en flerdimensjonal matrise

Slik kan du lage flerdimensjonale matriser i JavaScript.

Eksempel 1

 let studentsData = (('Jack', 24), ('Sara', 23), ('Peter', 24));

Eksempel 2

 let student1 = ('Jack', 24); let student2 = ('Sara', 23); let student3 = ('Peter', 24); // multidimensional array let studentsData = (student1, student2, student3);

Her oppretter både eksempel 1 og eksempel 2 et flerdimensjonalt utvalg med samme data.

Få tilgang til elementer i en matrise

Du kan få tilgang til elementene i en flerdimensjonal matrise ved hjelp av indekser (0, 1, 2 …) . For eksempel,

 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

Du kan tenke på en flerdimensjonal matrise (i dette tilfellet x), som en tabell med 3 rader og 2 kolonner.

Tilgang til flerdimensjonale matriseelementer

Legg til et element i en flerdimensjonal matrise

Du kan bruke Array's push () -metode eller en indekseringsnotasjon for å legge til elementer i en flerdimensjonal matrise.

Legge til element i den ytre matrisen

 let studentsData = (('Jack', 24), ('Sara', 23),); studentsData.push(('Peter', 24)); console.log(studentsData); //(("Jack", 24), ("Sara", 23), ("Peter", 24)

Legge til element i den indre matrisen

 // 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"))

Du kan også bruke Array's splice () -metode for å legge til et element i en spesifisert indeks. For eksempel,

 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))

Fjern et element fra en flerdimensjonal matrise

Du kan bruke Array's pop () -metode for å fjerne elementet fra en flerdimensjonal matrise. For eksempel,

Fjern Element fra Outer Array

 // remove the array element from outer array let studentsData = (('Jack', 24), ('Sara', 23),); studentsData.pop(); console.log(studentsData); // (("Jack", 24))

Fjern Element fra Inner Array

 // remove the element from the inner array let studentsData = (('Jack', 24), ('Sara', 23)); studentsData(1).pop(); console.log(studentsData); // (("Jack", 24), ("Sara"))

Du kan også bruke splice()metoden til å fjerne et element ved en spesifisert indeks. For eksempel,

 let studentsData = (('Jack', 24), ('Sara', 23),); // removing 1 index array item studentsData.splice(1,1); console.log(studentsData); // (("Jack", 24))

Iterere over flerdimensjonal matrise

Du kan itere over et flerdimensjonalt array ved hjelp av Array's forEach () -metoden for å itere over det flerdimensjonale arrayet. For eksempel,

 let studentsData = (('Jack', 24), ('Sara', 23),); // iterating over the studentsData studentsData.forEach((student) => ( student.forEach((data) => ( console.log(data); )); ));

Produksjon

 Jack 24 Sara 23

Den første forEach()metoden brukes til å iterere over de ytre arrayelementene, og den andre forEach()brukes til å iterere over de indre arrayelementene.

Du kan også bruke for… ofløkken til å gjenta over flerdimensjonale matriser. For eksempel,

 let studentsData = (('Jack', 24), ('Sara', 23),); for (let i of studentsData) ( for (let j of i) ( console.log(j); ) )

Du kan også bruke for loop til å gjenta over et flerdimensjonalt utvalg. For eksempel,

 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)); ) )

Interessante artikler...