JS Array Methods
Pelajari cara menggunakan berbagai metode array di JavaScript untuk manipulasi data yang efektif.
JavaScript Array Methods untuk Pemula
Array methods adalah fungsi bawaan JavaScript yang membuat kita lebih mudah bekerja dengan array. Dengan methods ini, kita bisa memanipulasi data dengan lebih efisien dan menulis kode yang lebih bersih.
Mengapa Kita Butuh Array Methods? 🤔
Tanpa array methods, kita harus menulis banyak kode berulang untuk melakukan operasi sederhana seperti:
- Mencari elemen dalam array
- Memfilter array berdasarkan kondisi
- Mengubah setiap elemen dalam array
- Mengurutkan elemen-elemen array
Array methods memungkinkan kita melakukan semua ini dengan sintaks yang ringkas!
1. Membuat Array di JavaScript
Penjelasan:
- Array bisa berisi berbagai tipe data (string, number, boolean, object, dll)
- Array memiliki properti
.length
yang menunjukkan jumlah elemen - Array di JavaScript bisa berisi elemen dengan tipe data berbeda
2. Metode untuk Menambah/Menghapus Elemen
Penjelasan:
push()
: Menambah elemen di akhir arraypop()
: Menghapus elemen terakhir dan mengembalikan nilai tersebutunshift()
: Menambah elemen di awal arrayshift()
: Menghapus elemen pertama dan mengembalikan nilai tersebut
⚠️ Perhatikan: Metode-metode ini mengubah array asli (mutating methods)
3. Metode untuk Mengubah Array
Penjelasan:
slice(start, end)
: Mengambil bagian array dari indeksstart
hingga sebelum indeksend
splice(start, count, ...items)
: Menghapuscount
elemen dimulai dari indeksstart
, dan menambahkanitems
(opsional)concat()
: Menggabungkan dua atau lebih array
⚠️ Perbedaan penting: slice()
tidak mengubah array asli, sedangkan splice()
mengubah array asli
4. Metode untuk Mencari Elemen
Penjelasan:
indexOf()
: Mengembalikan indeks pertama dari elemen yang dicari, atau -1 jika tidak ditemukanlastIndexOf()
: Mengembalikan indeks terakhir dari elemen yang dicariincludes()
: Mengembalikantrue
jika elemen ada dalam array,false
jika tidakfind()
: Mengembalikan nilai elemen pertama yang memenuhi kondisifindIndex()
: Mengembalikan indeks elemen pertama yang memenuhi kondisi
5. Metode untuk Transformasi Array (Functional Programming)
Penjelasan:
map()
: Membuat array baru dengan hasil memanggil fungsi untuk setiap elemenfilter()
: Membuat array baru dengan elemen yang memenuhi kondisireduce()
: Mengurangi array menjadi satu nilai dengan menjalankan fungsi untuk setiap elemenforEach()
: Menjalankan fungsi untuk setiap elemen tanpa mengembalikan array baru
⭐ Keunggulan: Metode-metode ini tidak mengubah array asli dan mendukung pendekatan pemrograman fungsional
6. Metode untuk Mengurutkan Array
Penjelasan:
sort()
: Mengurutkan elemen array dan mengubah array aslireverse()
: Membalik urutan elemen array dan mengubah array asli- Untuk mengurutkan angka dengan benar, kita perlu memberikan fungsi pembanding (compare function)
⚠️ Perhatian: sort()
dan reverse()
mengubah array asli (mutating methods)
7. Metode untuk Konversi Array
Penjelasan:
join(separator)
: Menggabungkan elemen array menjadi string dengan separator yang ditentukantoString()
: Mengonversi array menjadi string (menggunakan koma sebagai separator)split()
: Metode string untuk memecah string menjadi array (bukan metode array)
8. Contoh Nyata: Pengelolaan Data Produk
Penjelasan:
Dalam contoh nyata ini, kita menunjukkan beberapa array methods yang bekerja sama untuk:
- Mencari produk spesifik (
find()
) - Memfilter produk dengan kondisi tertentu (
filter()
) - Menghitung total nilai dengan akumulasi (
reduce()
) - Mengurutkan berdasarkan properti tertentu (
sort()
) - Membuat array baru dengan format yang berbeda (
map()
danjoin()
)
Perhatikan bahwa kita menggunakan [...produk]
untuk membuat salinan array sebelum menggunakan sort()
agar array asli tidak berubah.
9. Tips untuk Array Methods
✅ Lakukan:
- Gunakan metode immutable (
map
,filter
,reduce
) jika ingin menjaga array asli tetap tidak berubah - Pahami perbedaan antara
forEach()
dan metode lain (forEach tidak mengembalikan nilai) - Gunakan
find()
untuk mencari satu elemen danfilter()
untuk mencari banyak elemen - Perhatikan bahwa
sort()
mengubah array asli, buat salinan jika perlu
❌ Hindari:
- Jangan gunakan
for
loop jika ada array method yang sesuai - Jangan berharap
forEach()
mengembalikan array baru (gunakanmap()
sebagai gantinya) - Hindari penggunaan berlebihan chaining methods (
.map().filter().sort()
) karena bisa sulit dibaca
Latihan Singkat
Pertanyaan 1:
Apa output dari kode berikut?
Petunjuk: Perhatikan urutan operasi yang dilakukan pada array.
Jawaban: Output adalah [0, 1, 2, 3]
(menambah 4, menghapus 4, menambah 0 di awal)
Pertanyaan 2:
Bagaimana cara mendapatkan nilai maksimum dari array berikut?
Petunjuk: Anda bisa menggunakan Math.max()
bersama dengan operasi array yang sesuai.
Jawaban:
Atau dengan reduce()
: