TypeScript - Parameter Bawaan

Hai sana, bakal bintang pemrograman masa depan! Hari ini, kita akan melihat dunia yang menakjubkan TypeScript dan mengexplorekan fitur yang akan membuat hidupmu sebagai pemrogram jauh lebih mudah: Parameter Bawaan. Pada akhir pelajaran ini, kamu akan bisa menggunakan alat kuat ini seperti seorang ahli. Jadi, mari kita mulai!

TypeScript - Default Parameters

Apa Itu Parameter Bawaan?

Bayangkan kamu adalah seorang chef (terimalah, 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. Apakah tidak akan bagus jika kamu bisa memiliki resep yang secara otomatis termasuk garam kecuali dinyatakan lainnya? Itu tepat apa yang dilakukan parameter bawaan dalam pemrograman!

Dalam TypeScript, parameter bawaan memungkinkanmu menetapkan nilai bawaan untuk parameter fungsi. Jika fungsi dipanggil tanpa memberikan nilai untuk parameter tersebut, nilai bawaan akan digunakan.

mari kita 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 bawaan untuk name. Jika kita panggil greet() tanpa argumen apa pun, ia menggunakan "World" sebagai bawaan. Tetapi jika kita menyediakan nama, seperti "Alice", ia menggunakan itu sebagai ganti.

Mengapa Menggunakan Parameter Bawaan?

  1. Fleksibilitas: Mereka membuat fungsi kamu lebih fleksibel, memungkinkannya bekerja dengan atau tanpa argumen tertentu.
  2. Kode Lebih Bersih: Mereka mengurangi kebutuhan untuk kondisional dalam fungsi kamu untuk memeriksa apakah parameter diberikan.
  3. Keterbacaan yang Lebih Baik: Parameter bawaan menjelaskan nilai "normal" yang diharapkan untuk fungsi.

Cara Menggunakan Parameter Bawaan

mari kita mendalami lebih jauh dengan contoh yang 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 bawaan. Kita bisa memanggil fungsi tanpa argumen, satu argumen (yang akan digunakan untuk width), atau kedua argumen.

Menggunakan Ekspresi sebagai Nilai Bawaan

Parameter bawaan 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 bawaan untuk time, yang akan memberikan kita tanggal dan waktu saat ini saat fungsi dipanggil.

Parameter Bawaan dengan Tipe Lain

Parameter bawaan 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 bawaan dapat digunakan dengan tipe yang berbeda, termasuk array dan boolean.

Parameter Opsional vs Parameter Bawaan

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

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 Bawaan

Parameter bawaan menyediakan nilai bawaan 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 Bawaan
Sintaks Menggunakan ? setelah nama parameter Menggunakan = value setelah tipe parameter
Ketika tidak ada argumen yang diberikan Parameter adalah undefined Parameter menggunakan nilai bawaan
Kebutuhan untuk pengecekan null Sering memerlukan pengecekan dalam tubuh fungsi Tidak memerlukan pengecekan tambahan
Klaritas kehendak Kurang jelas apa yang terjadi jika parameter diabaikan Menunjukkan secara jelas perilaku bawaan

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

Praktik Terbaik untuk Menggunakan Parameter Bawaan

  1. Gunakan Nilai Bawaan yang Berarti: Pilih nilai bawaan yang membuat sense untuk mayoritas kasus penggunaan fungsi kamu.
  2. Dokumentasikan Parameter Bawaan: Meskipun nilai bawaan ada di kode, adalah praktik baik untuk menyebutkannya dalam dokumentasi fungsi kamu.
  3. Hati-hati dengan Parameter Bawaan yang Mutabel:hindari penggunaan objek mutabel sebagai parameter bawaan, karena mereka dapat menyebabkan perilaku yang tak terduga.
  4. Ingat undefined: Ingat bahwa undefined akan memicu nilai bawaan, tetapi null tidak akan.
function exampleBestPractices(
requiredParam: string,
optionalParam: string = "default value",
anotherOptional: number = 42
) {
// Tubuh fungsi
}

Kesimpulan

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

Saat kamu terus melanjutkan perjalanan pemrogramanmu, kamu akan menemukan banyak kesempatan untuk menggunakan parameter bawaan. Mungkin kamu akan membuat fungsi untuk menghitung biaya pengiriman dengan metode pengiriman bawaan, atau fungsi untuk memformat tanggal dengan format string bawaan. Kesempatan adalah tak terbatas!

Terus latih, terus kode, dan terutama, terus bersenang-senang dengan TypeScript. Sampai jumpa lagi, selamat coding!

Credits: Image by storyset