Parameter & Argument
Tujuan Pembelajaran
Section titled “Tujuan Pembelajaran”Setelah halaman ini, kamu dapat menjelaskan perbedaan parameter dan argument, dan menggunakan keduanya dengan benar.
Pendahuluan
Section titled “Pendahuluan”Dua kata ini sering dipakai bergantian oleh pemula, tapi sebenarnya memiliki arti yang berbeda dan penting untuk dipahami secara terpisah.
Penjelasan Materi
Section titled “Penjelasan Materi”Parameter adalah variabel yang didefinisikan di dalam tanda kurung saat membuat function. Parameter adalah slot atau tempat untuk data yang akan diterima.
Argument adalah nilai nyata yang dikirimkan saat memanggil function. Argument mengisi slot yang disediakan parameter.
function sapa(nama: string): void { // 'nama' adalah PARAMETER console.log(`Halo, ${nama}!`)}
sapa("Putra") // "Putra" adalah ARGUMENTAnalogi Kehidupan Sehari-hari
Section titled “Analogi Kehidupan Sehari-hari”Slot Buah dan Buah Aslinya
Section titled “Slot Buah dan Buah Aslinya”MESIN JUS [Slot buah] ← parameter (lubang yang disediakan) │ Masukkan Mangga ← argument (buah yang benar-benar dimasukkan) │ Keluar: Jus ManggaParameter adalah lubang kosong. Argument adalah apa yang kamu masukkan ke lubang itu.
Visual Illustration
Section titled “Visual Illustration”DEFINISI FUNCTION PEMANGGILAN FUNCTION───────────────── ────────────────────function greet( greet( nama: string, "Dewi", umur: number 17): void ) ▲ ▲ ▲ ▲ │ │ │ │parameter parameter argument argumentMari Mencoba
Section titled “Mari Mencoba”Buat src/bab4/parameter-dan-argument.ts:
function hitung(angka1: number, angka2: number, operasi: string): number { if (operasi === "tambah") return angka1 + angka2 if (operasi === "kurang") return angka1 - angka2 if (operasi === "kali") return angka1 * angka2 return 0}
// Argumen berbeda, function yang samaconsole.log(hitung(10, 5, "tambah")) // 15console.log(hitung(10, 5, "kurang")) // 5console.log(hitung(10, 5, "kali")) // 50Jalankan:
tsx src/bab4/parameter-dan-argument.tsOutput
Section titled “Output”15550Penjelasan Baris per Baris
Section titled “Penjelasan Baris per Baris”angka1,angka2,operasi— tiga parameter. Didefinisikan saat membuat function.10, 5, "tambah"— tiga argument pada pemanggilan pertama. Nilai nyata yang dikirim.- TypeScript memastikan jumlah dan tipe argument cocok dengan parameter.
Aturan Parameter dan Argument di TypeScript
Section titled “Aturan Parameter dan Argument di TypeScript”- Jumlah harus sama — jika function punya 3 parameter, harus ada 3 argument.
- Tipe harus sesuai — string ke parameter string, number ke parameter number.
- Urutan penting — argument pertama mengisi parameter pertama, dst.
Kesalahan yang Sering Terjadi
Section titled “Kesalahan yang Sering Terjadi”function sapa(nama: string): void { console.log(`Halo, ${nama}!`)}
sapa() // Error! Expected 1 arguments, but got 0.sapa("A", "B") // Error! Expected 1 arguments, but got 2.sapa(123) // Error! Argument of type 'number' is not assignable to parameter of type 'string'.Latihan
Section titled “Latihan”- Buat function
perkenalan(nama, kelas, sekolah)dengan tipe yang sesuai. - Panggil function dengan data dirimu sendiri.
- Coba kirim tipe yang salah dan amati error TypeScript.
Ringkasan
Section titled “Ringkasan”- Parameter = slot di definisi function.
- Argument = nilai nyata yang dikirim saat memanggil.
- Jumlah, tipe, dan urutan argument harus cocok dengan parameter.