Array dua dimensi adalah kumpulan item yang disusun sebagai matriks baris dan kolom, dan diberi nama
Solusi AbstrakArray dua dimensi dalam JavaScript adalah Array dari Array, jadi kami membuat Array dari objek Array satu dimensi
MasalahMari kita periksa ini melalui masalah dan solusi
Katakanlah saya ingin Array dua dimensi, yang disebut huruf, dari huruf abjad, seperti,
Array (matriks) dua dimensi 3 kali 3
Jika kita melihat lebih dekat kita dapat melihat bahwa baris pertama huruf adalah Array satu dimensi, firstRow=[a,f,k]. Baris kedua juga merupakan Array satu dimensi, secRow=[b,g,l] dan seterusnya
Demikian juga, kolom huruf pertama adalah Array satu dimensi,
firstCol= [a,b,c] dengan secondCol=[f,g,h] dan seterusnya
Dengan kata lain, kita dapat membangun ini dengan memiliki Array satu dimensi, di mana setiap entri Array satu dimensi yang asli adalah Array satu dimensi lainnya.
Pada dasarnya, ini adalah Array dari Array. Sederhana, Hah
J seperti array satu dimensi membutuhkan indeks untuk merujuk item di setiap lokasi Array, Array dua dimensi juga memerlukan cara untuk mengakses item di setiap lokasi.
Pada contoh di atas, kita dapat mengakses huruf 'a' dengan menentukan
baris pertama[0] atau baris pertama[0]
Ini membawa kita ke solusi untuk mengakses item Array dua dimensi. Untuk susunan huruf kami, huruf 'a' akan diakses dengan menentukan
huruf[0][0]. Huruf 'h' dengan menentukan huruf[2][1]
Intinya, namaarray[rowIndex][columnIndex]
Jadi Bagaimana kita membangun Array ini dan bagaimana kita bekerja dengannya?
Solusinya
Untuk membuat Array dua dimensi, pertama-tama buatlah Array satu dimensi. Kemudian ulangi setiap item dalam Array satu dimensi asli dan buat Array satu dimensi lainnya di setiap lokasi indeks dari Array satu dimensi asli
Mari gunakan larik huruf kita sebagai contoh
Pertama kita akan membuat Array satu dimensi yang mampu menyimpan 3 hal. Kemudian kita akan mengulang melalui Array dan menjadikan masing-masing "benda" itu sebagai Array yang mampu menyimpan 3 hal, sebuah surat
// Create a one dimensional array// capable of storing 3 objects
let letters = new Array(3); // Indices 0,1,2
// Loop through the array, adding a
// new array to each location
for (let i = 0; i < letters.length; i++) {
letters[i] = new Array(3);// new array of 3 locations
}
// Put items in the 2D array
letters[0][0]='a';
letters[0][1]='f';
letters[0][2]='k';
letters[1][0]='b';
letters[1][1]='g';
letters[1][2]='l';
letters[2][0]='c';
letters[2][1]='h';
letters[2][2]='m';// Display the 2D Array
console.table(letters);
Menjalankan ini memberi,
Output dari array 2D kami
Menghibur. table() melakukan pekerjaan dengan baik. Tetapi elemen dapat diakses dengan menggunakan for loop bersarang atau salah satu dari banyak cara lain seperti forEach
// Noticed they are row accessed firstletters.forEach(row=>{
row.forEach(cell=>{
console.log(cell);
console.log(typeof cell); })
})_
Keluaran mana,
Setiap item atau sel
Atau sesuatu di sepanjang garis,
// Better to use console.dir() and not console.log()for ( i in letters){
for ( j in letters[i]){
console.dir(letters[i][j]);
}
}
Perhatikan penggunaan konsol. dir(). Ini karena konsol. log() mengembalikan objek dalam representasi string dan konsolnya. dir() mengenali objek hanya sebagai objek dan menampilkan propertinya
Kuncinya adalah untuk mengingat, arrayName[rowIndex][columnIndex]
Untuk "kubus", Array 3 dimensi, kita membutuhkan Array dari Array dari Array. Mengakses item dengan cara seperti, arrayName[i][j][k]
KesimpulanKarena JavaScript tidak mendukung array dua atau multi-dimensi secara langsung, kami dapat menirunya, sesuai kebutuhan, menggunakan Array dari Array .. tergantung pada kebutuhan kami
Penting bagi kami untuk melacak indeks kami dan cara mengakses item dalam larik
Terima kasih telah membaca dan saya mendorong Anda untuk menjelajahi ini lebih jauh
Selamat mengkode
Baca semua artikel yang Anda inginkan di Medium dan bantu saya terus menulis dengan menjadi anggota Medium hanya dengan $5/bulan
Jika Anda ingin menguasai suatu bahasa, Anda harus menggunakannya untuk memecahkan algoritme dan masalah. Array multidimensi adalah suatu keharusan untuk ini
Sebuah kubus 3 dimensi. WantLine di Dribbble
F atau banyak pengembang JavaScript di luar sana, array biasanya hanyalah linier sederhana…