Function: Jantungnya Aplikasi ❤️
Kalau Variabel itu Bahan Makanan, maka Function itu Resep/Alat Masaknya. Kita tulis rumusnya sekali, bisa dipake masak (dipanggil) berkali-kali.
1. Regular Function (Cara Klasik 🏛️)
Ini cara penulisan standar yang udah ada dari dulu.
// Deklarasi
function hitungLuas(panjang, lebar) {
let hasil = panjang * lebar;
return hasil; // Kembalikan nilai ke pemanggil
}
// Cara Panggil (Eksekusi)
let kebun = hitungLuas(10, 5);
console.log(kebun); // 502. Arrow Function (Gaya Modern 🏹)
Ini primadonanya anak React. Penulisannya lebih singkat dan sexy.
// Perhatikan tanda panah "=>" ini
const hitungLuas = (panjang, lebar) => {
return panjang * lebar;
};
// Cara Panggil (Eksekusi)
let kebun = hitungLuas(10, 5);
console.log(kebun); // 50Fitur Sakti: "Implicit Return"
Kalau function lo isinya cuma satu baris, lo bisa hapus kurung kurawal {} dan kata return. Dia bakal otomatis ngembaliin nilai.
// Pendek banget kan?
const kaliDua = (angka) => angka * 2;
console.log(kaliDua(10)); // 20Kenapa Penting di React? Lo bakal sering liat codingan komponen React yang bersih
kayak gini berkat Implicit Return: const Tombol = () => <button> Klik Gue </button>;
3. Parameter & Default Value
Kadang kita lupa masukin bahan (argumen) pas manggil function, akhirnya error/undefined. Solusinya: Kasih Nilai Cadangan.
// Kalau 'nama' gak diisi, otomatis jadi "Tamu"
const sapaUser = (nama = "Tamu") => {
return `Halo, ${nama}!`;
};
console.log(sapaUser("Otong")); // "Halo, Otong!"
console.log(sapaUser()); // "Halo, Tamu!" (Gak error/undefined kan?)Bedanya Function Biasa vs Arrow? 🤔
Selain cara nulis, bedanya ada di cara mereka menangani keyword this.
-
Regular Function:
this-nya plin-plan (tergantung siapa yang manggil). -
Arrow Function:
this-nya setia (ngikutin bapaknya/scope luarnya).
Tips Buat Lo:
Coba perhatikan bagian "Implicit Return". Itu teknik yang bakal bikin kodingan Next.js lo nanti kelihatan pro dan bersih.
Note: Di React modern (Functional Component), lo jarang pusingin this. Jadi cukup tau aja kalau Arrow Function itu lebih aman.