Parameter default dan operator rest/spread adalah fitur canggih dan modern yang memungkinkan pengembang untuk menulis kode yang lebih bersih, ringkas, dan fleksibel dalam JavaScript. Jadi, mari kita pelajari apa itu parameter default, bagaimana cara kerjanya, dan contoh-contoh dunia nyata untuk memahami manfaatnya.
Parameter Default
Parameter Default - Pengembang dapat mengatur nilai default ke Parameter Fungsi. Hal ini sangat membantu dalam kasus-kasus ketika sebuah fungsi dipanggil tanpa semua argumen yang diharapkan atau salah satu argumen dilewatkan sebagai tidak terdefinisi.
Sintaks dan Penggunaan
Sintaks untuk parameter default sangat mudah:
function greet(name = 'Guest') {
console.log(`Hello, ${name}!`);
}
greet(); // Output: Hello, Guest!
greet('Alice'); // Output: Hello, Alice!
Sebagai contoh, pada kode di atas jika parameter name tidak ada dalam fungsi greet, maka parameter tersebut akan diisi secara internal dengan nilai default Guest. Hal ini untuk menghindari kebutuhan untuk memeriksa kondisi lain dalam fungsi.
sumber: codingsumit.com |
Manfaat
- Kemudahan Kode: Anda tidak perlu melakukan pemeriksaan atau penugasan manual di dalam fungsi.
- Meningkatkan keterbacaan: Tanda tangan fungsi dengan jelas menunjukkan apa yang akan dilakukan secara default.
- Meminimalkan Kesalahan: Bermanfaat untuk menghindari nilai tak terdefinisi yang tidak diinginkan.
Kasus Penggunaan Tingkat Lanjut
Parameter default juga dapat berupa ekspresi, dan bahkan memanggil fungsi lain:
function calculatePrice(price, tax = 0.1 * price) {
return price + tax;
}
console.log(calculatePrice(100)); // Output: 110
console.log(calculatePrice(100, 15)); // Output: 115
Operator Istirahat
Operator sisanya (...) memungkinkan fungsi untuk mengambil argumen dalam jumlah tak terbatas sebagai larik. Hal ini sangat berguna untuk fungsi yang mungkin memiliki jumlah input yang berbeda.
Sintaks dan Penggunaan
Berikut ini adalah sebuah contoh sederhana:function sum(...numbers) {
return numbers.reduce((total, num) => total + num, 0);
}
console.log(sum(1, 2, 3, 4)); // Output: 10
console.log(sum(5, 10)); // Output: 15
Apa yang dilakukannya adalah ... numbers membuat larik dengan semua argumen diteruskan ke penjumlahan, yang memungkinkan untuk melewati masalah ini dengan menggunakan metode larik mengurangi.
Manfaat
- Fleksibilitas: Menerima beberapa argumen tanpa perlu menentukannya.
- Fungsi Variadik yang Lebih Mudah: Membuat penulisan fungsi variadic menjadi lebih mudah.
- Dapat Dibaca dan Dipelihara: Tidak memanipulasi objek argumen.
Operator Penyebaran
Operator sebar (...) menerjemahkan larik atau objek menjadi elemen-elemen individual. Operator ini sebagian besar digunakan untuk menduplikasi pergantian, melampirkan pergantian atau melewatkan pergantian sebagai parameter individual ke fungsi.
Sintaks dan Penggunaan
Memperluas Larik:
const numbers = [1, 2, 3];
console.log(...numbers); // Output: 1 2 3
const newNumbers = [...numbers, 4, 5];
console.log(newNumbers); // Output: [1, 2, 3, 4, 5]
Menggabungkan Susunan:
const arr1 = [1, 2];
const arr2 = [3, 4];
const combined = [...arr1, ...arr2];
console.log(combined); // Output: [1, 2, 3, 4]
Meneruskan Argumen ke Fungsi:
function multiply(a, b, c) {
return a * b * c;
}
const factors = [2, 3, 4];
console.log(multiply(...factors)); // Output: 24
Manfaat
- isEasy: Membuat memanipulasi array dan objek menjadi lebih mudah.
- Kekekalan: Menyimpan salinan larik atau objek tanpa mengubah data yang ada
- Peningkatan Keterbacaan: Meminimalkan kode boilerplate
Menggabungkan Rest dan Spread
Anda kemudian dapat menggabungkan operator-operator ini untuk membentuk pola yang lebih efektif:
function multiplyBy(multiplier, ...numbers) {
return numbers.map(num => num * multiplier);
}
const nums = [1, 2, 3];
console.log(multiplyBy(2, ...nums)); // Output: [2, 4, 6]
Jadi pada contoh di atas; operator spread digunakan untuk memperluas larik angka dan operator rest digunakan untuk mengumpulkan semua argumen lain ke dalam satu larik yang disebut angka.
Kesimpulan
Parameter default dan operator rest/spread adalah alat yang sangat berguna di dalam toolbox JS modern. Artikel ini menjelaskan tentang parameter default, operator rest dan spread yang membantu Anda dalam menulis kode yang lebih sederhana, rapi dan elegan. Jika Anda dapat menguasai fitur-fitur JavaScript ini maka kode Anda akan menjadi pendek dan mudah dibaca serta lebih fleksibel dan mudah dipelihara.
kembali ke>>>> Memahami ES6: Fitur Baru dalam JavaScript