Membuat Function
Tujuan Pembelajaran
Section titled “Tujuan Pembelajaran”Setelah halaman ini, kamu dapat menulis deklarasi function yang lengkap dengan parameter dan anotasi tipe.
Pendahuluan
Section titled “Pendahuluan”Sekarang kita masuk ke praktik. Bagaimana cara membuat function di TypeScript? Ada aturan sintaks yang harus diikuti agar TypeScript bisa memahami dan memeriksa kode kita.
Sintaks Dasar
Section titled “Sintaks Dasar”function namaFunction(parameter: tipe): tipeReturn { // isi function return nilai}Contoh konkret:
function tambah(a: number, b: number): number { return a + b}Penjelasan Setiap Bagian
Section titled “Penjelasan Setiap Bagian”| Bagian | Kode | Artinya |
|---|---|---|
| Kata kunci | function |
Mendeklarasikan function baru |
| Nama | tambah |
Identitas function, dipakai saat memanggil |
| Parameter | a: number, b: number |
Dua input bertipe number |
| Tipe return | : number |
Function mengembalikan number |
| Tubuh | { return a + b } |
Kode yang dijalankan saat dipanggil |
Tipe Return Khusus: void
Section titled “Tipe Return Khusus: void”Jika function tidak mengembalikan nilai apapun, gunakan : void:
function cetakSalam(nama: string): void { console.log(`Halo, ${nama}!`) // tidak ada return}Analogi Kehidupan Sehari-hari
Section titled “Analogi Kehidupan Sehari-hari”Resep masakan adalah function. Resep mendefinisikan:
- Bahan yang diperlukan (parameter)
- Langkah-langkah memasak (isi function)
- Makanan yang dihasilkan (return value)
Resep Nasi Goreng: Bahan: nasi, telur, bumbu ← parameter Langkah: tumis, campur... ← isi function Hasil: nasi goreng ← return valueVisual Illustration
Section titled “Visual Illustration”function [NAMA]([PARAMETER]: [TIPE]): [TIPE_RETURN] { [ISI FUNCTION] return [NILAI]}function sapa (nama: string) : void {─────────────── ────────────── ────mendefinisikan input yang tidakfunction baru diterima mengembalikan nilai}Mari Mencoba
Section titled “Mari Mencoba”Buat src/bab4/membuat-function.ts:
// Function tanpa return (void)function tampilkanJudul(judul: string): void { console.log("=".repeat(40)) console.log(` ${judul}`) console.log("=".repeat(40))}
// Function dengan return numberfunction hitungLuasSegitiga(alas: number, tinggi: number): number { return (alas * tinggi) / 2}
// Function dengan return stringfunction buatSalam(nama: string, waktu: string): string { return `Selamat ${waktu}, ${nama}!`}
// Function dengan return booleanfunction apakahLulus(nilai: number): boolean { return nilai >= 75}
// Jalankan semua functiontampilkanJudul("Sistem Nilai Siswa")console.log(`Luas segitiga: ${hitungLuasSegitiga(10, 6)}`)console.log(buatSalam("Putra", "pagi"))console.log(`Lulus: ${apakahLulus(80)}`)console.log(`Lulus: ${apakahLulus(60)}`)Jalankan:
tsx src/bab4/membuat-function.tsOutput
Section titled “Output”======================================== Sistem Nilai Siswa========================================Luas segitiga: 30Selamat pagi, Putra!Lulus: trueLulus: falsePenjelasan Baris per Baris
Section titled “Penjelasan Baris per Baris”tampilkanJudul— void function, hanya mencetak, tidak mengembalikan nilai.hitungLuasSegitiga— menerima dua number, mengembalikan number hasil rumus.buatSalam— menerima dua string, mengembalikan satu string yang sudah diformat.apakahLulus— menerima number, mengembalikan boolean dari perbandingan.
Kesalahan yang Sering Terjadi
Section titled “Kesalahan yang Sering Terjadi”function hitungKeliling(sisi: number): number { console.log(sisi * 4) // Lupa return! TypeScript akan error: // "Function lacks ending return statement"}Jika tipe return bukan void, wajib ada return.
Latihan
Section titled “Latihan”Buat empat function:
hitungKeliling(sisi)— keliling persegiubahKeHurufBesar(teks)— mengembalikan string huruf kapitalapakahGenap(angka)— mengembalikan booleanbuatNamaBadge(nama, kelas)— mengembalikan"[nama] - [kelas]"
Ringkasan
Section titled “Ringkasan”- Sintaks:
function nama(param: tipe): tipeReturn { ... } - Void berarti function tidak mengembalikan nilai.
- Setiap tipe return selain void wajib ada
return. - Satu function sebaiknya satu tugas.