TypeScript - Default Parameters

Halo sana, para bintang pemrograman masa depan! Hari ini, kita akan melihat dunia yang menakjubkan TypeScript dan menjelajahi fitur yang akan membuat hidupmu sebagai pemrogram menjadi lebih mudah: Default Parameters. Pada akhir pelajaran ini, kamu akan bisa menggunaan alat kuat ini seperti seorang ahli. Jadi, mari kita mulai!

TypeScript - Default Parameters

Apa Itu Default Parameters?

Bayangkan kamu adalah seorang chef (teruskan, kita akan ke pemrograman sebentar lagi!). Setiap hari, kamu membuat sup yang lezat. Pada mayoritas waktu, kamu menambah garam ke supmu. Tetapi kadang-kadang, pelanggan mungkin meminta tanpa garam. Warna-warni jika kamu bisa memiliki resep yang secara otomatis termasuk garam kecuali dinyatakan lainnya? Itu tepat apa yang default parameters lakukan dalam pemrograman!

Dalam TypeScript, default parameters memungkinkanmu untuk menentukan nilai default untuk parameter sebuah fungsi. Jika fungsi dipanggil tanpa memberikan nilai untuk parameter itu, nilai default akan digunakan.

mari lihat contoh sederhana:

function greet(name: string = "World") {
console.log(`Hello, ${name}!`);
}

greet(); // Output: Hello, World!
greet("Alice"); // Output: Hello, Alice!

Dalam contoh ini, "World" adalah parameter default untuk name. Jika kita panggil greet() tanpa argumen apa pun, itu menggunakan "World" sebagai default. Tetapi jika kita memberikan nama, seperti "Alice", itu menggunakan yang lain.

Mengapa Menggunakan Default Parameters?

  1. Flexibilitas: Mereka membuat fungsi kamu lebih fleksibel, memungkinkannya bekerja dengan atau tanpa argumen tertentu.
  2. Kode Lebih Bersih: Mereka mengurangi kebutuhan untuk kondisional dalam fungsi untuk memeriksa jika parameter diberikan.
  3. Penjelasan yang Lebih Baik: Default parameters membuat jelas apa nilai "normal" yang diharapkan untuk sebuah fungsi.

Cara Menggunakan Default Parameters

mari masuk lebih dalam dengan contoh lain:

Penggunaan Dasar

function calculateArea(width: number = 10, height: number = 5) {
return width * height;
}

console.log(calculateArea()); // Output: 50
console.log(calculateArea(20)); // Output: 100
console.log(calculateArea(7, 3)); // Output: 21

Dalam contoh ini, keduanya width dan height memiliki nilai default. Kita dapat memanggil fungsi tanpa argumen, satu argumen (yang akan digunakan untuk width), atau kedua argumen.

Menggunakan Ekspresi sebagai Nilai Default

Parameter default dapat berupa ekspresi, tidak hanya nilai sederhana:

function getRandomGreeting(name: string = "friend", time: Date = new Date()) {
const greetings = ["Hello", "Hi", "Hey", "Howdy"];
const randomGreeting = greetings[Math.floor(Math.random() * greetings.length)];
return `${randomGreeting}, ${name}! It's ${time.toLocaleTimeString()} now.`;
}

console.log(getRandomGreeting()); // Output: misalnya, "Hey, friend! It's 3:45:30 PM now."
console.log(getRandomGreeting("Alice")); // Output: misalnya, "Hello, Alice! It's 3:45:35 PM now."

Di sini, kita menggunakan new Date() sebagai nilai default untuk time, yang akan memberikan waktu dan tanggal saat ini ketika fungsi dipanggil.

Default Parameters dengan Tipe Lain

Parameter default bekerja dengan semua tipe dalam TypeScript:

function createUser(
name: string = "Anonymous",
age: number = 0,
isAdmin: boolean = false,
hobbies: string[] = []
) {
return { name, age, isAdmin, hobbies };
}

console.log(createUser());
// Output: { name: "Anonymous", age: 0, isAdmin: false, hobbies: [] }

console.log(createUser("Alice", 30, true, ["reading", "coding"]));
// Output: { name: "Alice", age: 30, isAdmin: true, hobbies: ["reading", "coding"] }

Contoh ini menunjukkan bagaimana parameter default dapat digunakan dengan tipe yang berbeda, termasuk array dan boolean.

Parameter Opsional vs Parameter Default

Sekarang, kamu mungkin berpikir, "Tunggu sebentar! Saya sudah mendengar tentang parameter opsional. Bagaimana perbedaannya dengan parameter default?" Pertanyaan bagus! mari kitauraikan:

Parameter Opsional

Parameter opsional ditandai dengan ? dan memungkinkanmu untuk memanggil fungsi tanpa memberikan nilai untuk parameter itu.

function greetOptional(name?: string) {
if (name) {
console.log(`Hello, ${name}!`);
} else {
console.log("Hello, stranger!");
}
}

greetOptional(); // Output: Hello, stranger!
greetOptional("Bob"); // Output: Hello, Bob!

Parameter Default

Parameter default menyediakan nilai default yang akan digunakan jika tidak ada argumen yang diberikan.

function greetDefault(name: string = "stranger") {
console.log(`Hello, ${name}!`);
}

greetDefault(); // Output: Hello, stranger!
greetDefault("Bob"); // Output: Hello, Bob!

Perbedaan Utama

Fitur Parameter Opsional Parameter Default
Sintaks Menggunakan ? setelah nama parameter Menggunakan = value setelah tipe parameter
Ketika tidak ada argumen yang diberikan Parameter adalah undefined Parameter menggunakan nilai default
Kebutuhan untuk pengecekan null Biasanya memerlukan pengecekan dalam tubuh fungsi Tidak memerlukan pengecekan tambahan
Kesabaran kehendak Kurang jelas apa yang terjadi jika parameter diabaikan Menunjukkan secara jelas perilaku default

Secara umum, parameter default seringkali lebih mudah dan menghasilkan kode yang lebih bersih, karena mereka menghilangkan kebutuhan untuk pengecekan null dalam tubuh fungsi.

Praktik Terbaik untuk Menggunakan Parameter Default

  1. Gunakan Default Yang Berkaitan: Pilih nilai default yang memiliki makna untuk mayoritas kasus penggunaan fungsi kamu.
  2. Dokumentasikan Default Kamu: Meskipun default ada di kode, adalah praktik baik untuk menyebutkannya dalam dokumentasi fungsi kamu.
  3. Hati-hati dengan Default Yang Bisa Diubah: Hindari penggunaan objek yang dapat diubah sebagai parameter default, karena mereka bisa menyebabkan perilaku yang tak terduga.
  4. Ingat undefined: Ingat bahwa undefined akan memicu nilai default, tetapi null tidak akan.
function exampleBestPractices(
requiredParam: string,
optionalParam: string = "default value",
anotherOptional: number = 42
) {
// Tubuh fungsi
}

Kesimpulan

Dan begitu saja, teman-teman! Kamu telah meningkatkan keterampilan TypeScriptmu dengan memahami parameter default. Ingat, seperti semua alat dalam pemrograman, parameter default paling kuat saat digunakan dengan bijak. Mereka dapat membuat kode kamu lebih kuat, mudah dibaca, dan fleksibel.

Sekarang, teruslatih, terus kode, dan yang paling penting, terus bersenang-senang dengan TypeScript. Sampaijumpa lagi, selamat coding!

Credits: Image by storyset