DISKON TERBATAS! Masukkan kupon "skillbaru" saat checkout di kelas apa saja

Logo Koala Skodev mengetik

Skodev

Belajar coding dalam bahasa Indonesia

REST PARAMETER ES6

Artikel ini menjelaskan tentang Rest Parameter pada ES6 JavaScript serta contoh penggunaannya untuk memahami konsepnya lebih jauh.

Rest Parameter merupakan fitur baru dari ES6 JavaScript yang memungkinkan suatu fungsi untuk menerima jumlah parameter tidak terbatas sebagai array.

Apa Itu Rest Parameter?

Rest Parameter adalah fitur dalam JavaScript ES6 yang memungkinkan kamu untuk memasukkan jumlah argumen yang tak terbatas ke dalam sebuah fungsi dalam bentuk array. Ini sangat berguna saat kita tidak tahu berapa banyak argumen yang akan diterima oleh suatu fungsi.

Sintaksnya sangat sederhana, cukup menggunakan tiga titik (…) sebelum nama parameter.

Contoh sederhana penggunaan Rest Parameter:

function jumlah(...angka) {
  let total = 0;
  for(let i of angka) {
      total += i;
  }
  return total;
}

console.log(jumlah(1, 2, 3, 4, 5)); // mencetak: 15

Dalam contoh di atas, ...angka adalah Rest Parameter yang menerima argumen dalam bentuk array. Fungsi jumlah kemudian menghitung total dari semua argumen yang diterima.

Keuntungan Menggunakan Rest Parameter

Ada beberapa keuntungan menggunakan Rest Parameter dalam pengembangan JavaScript:

Fleksibilitas

Rest Parameter memberikan fleksibilitas dalam penanganan parameter. Kamu tidak perlu tahu jumlah pasti parameter yang akan diterima fungsi.

Penggunaan yang Lebih Sederhana daripada arguments

Sebelum ES6, JavaScript memiliki objek arguments yang digunakan untuk mengakses parameter fungsi. Namun, arguments bukanlah array sebenarnya, dan tidak memiliki metode array seperti push, pop, dan lainnya. Dengan menggunakan Rest Parameter, kamu mendapatkan semua manfaat metode array.

Dapat Digunakan dengan Arrow Functions

arguments tidak dapat digunakan dengan arrow functions, tapi Rest Parameter bisa.

Menggabungkan Rest Parameter dengan Parameter Biasa

Kamu juga bisa menggunakan Rest Parameter dengan parameter biasa. Parameter biasa harus ditempatkan sebelum Rest Parameter:

function siswa(nama, kelas, ...nilai) {
  let totalNilai = 0;
  for(let i of nilai) {
      totalNilai += i;
  }
  return `Nama: ${nama}, Kelas: ${kelas}, Total Nilai: ${totalNilai}`;
}

console.log(siswa('Andi', '12A', 80, 90, 85)); 
// mencetak: Nama: Andi, Kelas: 12A, Total Nilai: 255

Dalam contoh di atas, parameter biasa adalah nama dan kelas, sementara ...nilai adalah Rest Parameter.

👈🏼 … operator (three dots)
Spread operator ES6 👉🏼