Fungsi dalam TypeScript: Parameter, Return Type, dan Arrow Function

By | 20 October 2025

Dalam dunia pemrograman modern, Fungsi TypeScript memiliki peran penting sebagai pondasi dalam membangun logika dan struktur kode yang modular. Sama seperti di JavaScript, fungsi digunakan untuk menjalankan tugas tertentu, namun TypeScript memberikan lapisan tambahan berupa sistem tipe yang kuat untuk memastikan kode lebih aman dan mudah dikelola.

Berbeda dengan JavaScript yang bersifat dinamis, TypeScript memberikan kemampuan untuk menentukan tipe parameter dan nilai kembalian (return type) pada fungsi. Hal ini membantu pengembang menemukan kesalahan lebih cepat saat proses kompilasi, bukan setelah kode dijalankan. Dengan pemahaman yang baik tentang fungsi di TypeScript, kamu bisa menulis kode yang lebih bersih, efisien, dan mudah di-maintain.

Definisi Fungsi dalam TypeScript

Fungsi di TypeScript dapat didefinisikan menggunakan kata kunci function seperti pada JavaScript. Namun, TypeScript memungkinkan kita menentukan tipe parameter dan tipe nilai kembalian. Berikut contohnya:

function tambah(a: number, b: number): number {
  return a + b;
}

Dalam contoh di atas:

  • a dan b bertipe number.

  • Fungsi mengembalikan nilai bertipe number.

Jika kita mencoba mengirimkan parameter bertipe selain number, TypeScript akan memberikan peringatan saat proses kompilasi.

Parameter dan Return Type

Tipe parameter memastikan bahwa fungsi hanya menerima nilai sesuai dengan yang didefinisikan. Sedangkan return type membantu memastikan nilai keluaran fungsi konsisten.

Contoh fungsi dengan string sebagai return type:

function greet(name: string): string {
  return `Halo, ${name}!`;
}

Jika fungsi tidak mengembalikan nilai, gunakan tipe void:

function logMessage(message: string): void {
  console.log(message);
}

Dengan demikian, TypeScript memberikan jaminan keamanan tipe yang lebih kuat dibanding JavaScript biasa.

Default dan Optional Parameter

TypeScript juga mendukung parameter dengan nilai default dan parameter opsional, sehingga fungsi menjadi lebih fleksibel.

Contoh parameter default:

function sayHello(name: string = "Pengguna"): string {
  return `Halo, ${name}!`;
}

Jika pemanggilan fungsi tidak menyertakan argumen, nilai default akan digunakan.

Sedangkan untuk parameter opsional, gunakan tanda ?:

function cetakData(nama: string, umur?: number): void {
  if (umur) {
    console.log(`Nama: ${nama}, Umur: ${umur}`);
  } else {
    console.log(`Nama: ${nama}`);
  }
}

Parameter umur bersifat opsional, sehingga fungsi tetap dapat dijalankan walaupun tidak diberikan.

Arrow Function dalam TypeScript

Selain fungsi konvensional, arrow function menjadi cara modern yang lebih ringkas dalam menulis fungsi di TypeScript. Biasanya digunakan untuk fungsi sederhana atau callback.

Contoh penggunaan arrow function:

const kali = (a: number, b: number): number => a * b;

Arrow function juga sering digunakan dalam konteks map, filter, atau reduce:

const angka = [1, 2, 3];
const hasil = angka.map((n: number): number => n * 2);
console.log(hasil); // [2, 4, 6]

Arrow function menjaga konteks this agar tetap konsisten, sehingga sangat berguna dalam penggunaan di class atau callback asinkron.

Kesimpulan

Fungsi TypeScript memberikan keunggulan besar dibanding JavaScript tradisional karena dilengkapi sistem tipe yang kuat. Dengan kemampuan menentukan parameter, return type, serta dukungan untuk default dan optional parameter, kode menjadi lebih aman dan mudah dipahami.

Selain itu, arrow function memberikan sintaks yang lebih ringkas dan efisien untuk berbagai kebutuhan. Dengan memahami konsep ini, kamu sudah selangkah lebih dekat menjadi pengembang TypeScript yang andal dan produktif.