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.

Comments