KuloDev
1 Hari
0 XP
intermediate20 menitModul: 05-data-structures

Struktur Data Bersarang: Array of Objects & Matriks 2D

Mengelola data kompleks di dunia nyata (seperti respons API JSON, papan catur / grid game, dan relasi data bersarang).

1. Array of Objects (Bentuk Standar Data API)

Hampir 90% pertukaran data antara backend server dan aplikasi frontend menggunakan format Array of Objects (kumpulan object berurutan). Mengetahui cara melakukan filter, pencarian, dan kalkulasi total pada data ini adalah keterampilan wajib software engineer.

Manipulasi Array of Objects
javascript
1const produkList = [
2 { id: 1, nama: "Keyboard Mechanical", harga: 450000, stok: 12 },
3 { id: 2, nama: "Mouse Wireless", harga: 150000, stok: 0 },
4 { id: 3, nama: "Monitor 24 Inch", harga: 1800000, stok: 5 }
5];
6
7// 1. Filter produk yang masih ada stok
8const produkReady = produkList.filter((p) => p.stok > 0);
9
10// 2. Hitung total nilai inventaris dengan .reduce()
11const totalNilaiInventaris = produkList.reduce(
12 (akumulator, p) => akumulator + p.harga * p.stok,
13 0
14);
15
16console.log("Total nilai gudang: Rp", totalNilaiInventaris);

2. Matriks 2 Dimensi (Array di dalam Array)

Matriks 2D adalah array yang berisi array lain. Ini digunakan untuk merepresentasikan koordinat grid (baris dan kolom), seperti papan catur, pixel gambar, atau peta game.

Papan Tic-Tac-Toe dengan Matriks 2D
javascript
1const papan = [
2 ["X", "O", "X"], // Baris 0
3 [" ", "X", "O"], // Baris 1
4 ["O", " ", "X"] // Baris 2
5];
6
7// Mengakses titik tengah: papan[baris][kolom]
8console.log("Tengah:", papan[1][1]); // "X"
9
10// Menempatkan bidak di baris 1 kolom 0
11papan[1][0] = "O";
Kuis Pemahaman
+10 XP

Pada matriks `const grid = [[10, 20], [30, 40]];`, bagaimana cara mengakses nilai angka 40?

Selesaikan Materi Ini?

Dapatkan +25 XP dan simpan progres belajarmu.