Array

Array 📋

Array adalah struktur data yang digunakan untuk menyimpan kumpulan nilai secara berurutan dalam satu variabel. Array adalah salah satu tipe data yang paling sering digunakan dalam JavaScript.


Membuat Array

// Array literal — cara yang direkomendasikan
let buah = ['apel', 'mangga', 'jeruk'];
let angka = [1, 2, 3, 4, 5];
let campuran = [1, 'Budi', true, null]; // bisa berbeda tipe
let kosong = [];

Mengakses Elemen Array

Array menggunakan indeks berbasis nol (zero-based index):

let buah = ['apel', 'mangga', 'jeruk', 'pisang'];

console.log(buah[0]);  // 'apel' — elemen pertama
console.log(buah[1]);  // 'mangga'
console.log(buah[3]);  // 'pisang' — elemen terakhir
console.log(buah[4]);  // undefined — indeks tidak ada

// Mengakses dari belakang
console.log(buah[buah.length - 1]); // 'pisang' — cara klasik
console.log(buah.at(-1));           // 'pisang' — cara modern
console.log(buah.at(-2));           // 'jeruk'

Mengubah Array

let buah = ['apel', 'mangga', 'jeruk'];

buah[1] = 'semangka'; // ubah elemen index 1
console.log(buah); // ['apel', 'semangka', 'jeruk']

// Menambah elemen
buah.push('pisang');    // tambah di akhir
buah.unshift('melon');  // tambah di awal

// Menghapus elemen
buah.pop();    // hapus dari akhir — mengembalikan elemen yang dihapus
buah.shift();  // hapus dari awal — mengembalikan elemen yang dihapus

// splice — tambah/hapus di posisi mana saja
buah.splice(1, 1);           // hapus 1 elemen dari index 1
buah.splice(1, 0, 'anggur'); // sisipkan 'anggur' di index 1
buah.splice(1, 1, 'kiwi');   // ganti elemen di index 1 dengan 'kiwi'

Method Array yang Paling Penting

let angka = [3, 1, 4, 1, 5, 9, 2, 6];

// --- Informasi ---
console.log(angka.length);              // 8
console.log(angka.indexOf(5));          // 4 — index pertama kali 5 muncul
console.log(angka.includes(9));         // true
console.log(angka.find(n => n > 4));    // 5 — elemen pertama yang > 4
console.log(angka.findIndex(n => n > 4)); // 4 — index elemen yang > 4

// --- Transformasi (mengembalikan array BARU, tidak mengubah asli) ---
let ganda = angka.map(n => n * 2);             // setiap elemen dikali 2
let besar = angka.filter(n => n > 3);          // hanya elemen yang > 3
let total = angka.reduce((acc, n) => acc + n, 0); // jumlahkan semua

console.log(ganda); // [6, 2, 8, 2, 10, 18, 4, 12]
console.log(besar); // [4, 5, 9, 6]
console.log(total); // 31

// --- Pengurutan (mengubah array ASLI!) ---
angka.sort((a, b) => a - b); // urutkan ascending: [1, 1, 2, 3, 4, 5, 6, 9]
angka.sort((a, b) => b - a); // urutkan descending: [9, 6, 5, 4, 3, 2, 1, 1]
angka.reverse();             // balik urutan

// --- Penggabungan ---
let arr1 = [1, 2, 3];
let arr2 = [4, 5, 6];
let gabung  = arr1.concat(arr2);  // [1, 2, 3, 4, 5, 6]
let gabung2 = [...arr1, ...arr2]; // sama, tapi pakai spread

// --- Konversi ---
console.log(angka.join(', ')); // "1, 1, 2, ..." — array ke string
console.log('a,b,c'.split(',')); // ['a', 'b', 'c'] — string ke array

// --- Pengecekan ---
console.log(Array.isArray([]));  // true
console.log(Array.isArray('')); // false

Destructuring Array

Cara elegan untuk mengekstrak nilai dari array:

let koordinat = [10, 20, 30];

// Cara lama
let x = koordinat[0];
let y = koordinat[1];

// Dengan destructuring
let [x, y, z] = koordinat;
console.log(x, y, z); // 10 20 30

// Lewati elemen tertentu
let [pertama, , ketiga] = koordinat;
console.log(pertama, ketiga); // 10 30

// Default value
let [a, b, c, d = 0] = koordinat;
console.log(d); // 0 — d tidak ada di array, pakai default

// Rest dalam destructuring
let [kepala, ...ekor] = [1, 2, 3, 4, 5];
console.log(kepala); // 1
console.log(ekor);   // [2, 3, 4, 5]

// Swap variabel tanpa variabel sementara
let p = 1, q = 2;
[p, q] = [q, p];
console.log(p, q); // 2 1

💡 Tips: Metode map(), filter(), dan reduce() adalah tiga metode array paling powerful dan sering digunakan. Kuasai ketiganya dan kamu bisa menyelesaikan hampir semua masalah manipulasi data. Ingat: map untuk transformasi, filter untuk pemilihan, reduce untuk agregasi. 🚀

Selanjutnya

Informasi Kursus

Kursus

JavaScript Dasar

Kategori

Array & Objek

Durasi Pelajaran

20 menit

Pelajaran dalam Kategori Ini