September 17, 2026
Memahami Function di JavaScript.
Cara mendeklarasikan function di JavaScript modern: function declaration, function expression, arrow function, dan default parameter.
Function adalah blok kode yang dibungkus menjadi satu unit agar bisa dipakai berulang kali tanpa menulis ulang logika yang sama.
Function Declaration
function sapa(nama) {
return `Halo, ${nama}!`;
}
console.log(sapa("Adit")); // "Halo, Adit!"
Function declaration bisa dipanggil bahkan sebelum baris deklarasinya karena mengalami hoisting penuh.
Function Expression
const sapa = function (nama) {
return `Halo, ${nama}!`;
};
Berbeda dari function declaration, function expression tidak bisa dipanggil sebelum baris deklarasinya.
Arrow Function
Arrow function (ES6) menawarkan sintaks yang lebih ringkas, terutama untuk fungsi pendek.
const sapa = (nama) => `Halo, ${nama}!`;
const tambah = (a, b) => a + b;
const cetak = () => {
console.log("Tidak ada parameter");
};
Parameter dan Argumen
function luasPersegi(sisi) {
return sisi * sisi;
}
luasPersegi(5); // 25 — 5 adalah argumen untuk parameter 'sisi'
Default Parameter
function sapa(nama = "Tamu") {
return `Halo, ${nama}!`;
}
sapa(); // "Halo, Tamu!"
sapa("Fitri"); // "Halo, Fitri!"
Rest Parameter untuk Argumen Tak Terbatas
function jumlahkan(...angka) {
return angka.reduce((total, n) => total + n, 0);
}
jumlahkan(1, 2, 3); // 6
jumlahkan(5, 10, 15, 20); // 50
Return Value
function kuadrat(n) {
return n * n;
}
const hasil = kuadrat(4); // 16
Function tanpa return eksplisit secara otomatis menghasilkan undefined.
Function sebagai Nilai
Di JavaScript, function adalah first-class citizen — bisa disimpan dalam variabel, dikirim sebagai argumen, atau dikembalikan dari fungsi lain.
function buatPengali(pengali) {
return (angka) => angka * pengali;
}
const kali3 = buatPengali(3);
console.log(kali3(4)); // 12
Kesimpulan
Function declaration cocok untuk fungsi utama yang perlu dipanggil di mana saja dalam file, arrow function cocok untuk fungsi pendek dan callback, sementara default parameter serta rest parameter membuat fungsi lebih fleksibel menghadapi berbagai jumlah argumen tanpa validasi manual yang berlebihan.

Hey! I’m Fanny, the software engineer tending to this digital garden. You can read more about me, or subscribe by email.