Fungsi dalam JavaScript

Fungsi dalam JavaScript
Fungsi adalah blok kode yang dirancang untuk melakukan tugas tertentu. Fungsi dapat dipanggil dan digunakan kembali di seluruh program, yang membantu membuat kode lebih modular dan terstruktur.
Jenis Fungsi dalam JavaScript
Fungsi Deklarasi
Fungsi yang didefinisikan menggunakan kata kunci function
.
function name(params) { /* code */ }
function greet() { console.log('Hello'); }
Fungsi Ekspresi
Fungsi yang disimpan dalam variabel.
let name = function(params) { /* code */ }
let greet = function() { console.log('Hello'); }
Fungsi Panah
Sintaks fungsi yang lebih ringkas menggunakan =>
.
let name = (params) => { /* code */ }
let greet = () => { console.log('Hello'); }
Fungsi Anonim
Fungsi tanpa nama yang sering digunakan sebagai argumen.
function(params) { /* code */ }
setTimeout(function() { console.log('Hello'); }, 1000);
Fungsi Callback
Fungsi yang diteruskan sebagai argumen ke fungsi lain.
function process(callback) { callback(); } process(() => { console.log('Hello'); });
Fungsi Generator
Fungsi yang dapat menghentikan dan melanjutkan eksekusi.
function* name(params) { /* code */ }
function* generator() { yield 1; yield 2; yield 3; }
Fungsi Rekursif
Fungsi yang memanggil dirinya sendiri.
function name(params) { if (condition) { name(params); } }
function factorial(n) { if (n === 0) { return 1; } return n * factorial(n - 1); }
Penjelasan dan Contoh
Fungsi Deklarasi:
function greet() { console.log('Hello'); } greet(); // Output: Hello
Penjelasan: Fungsi
greet
didefinisikan menggunakan kata kuncifunction
. Fungsi ini tidak memiliki parameter dan hanya mencetak "Hello" ke konsol saat dipanggil.
Fungsi Ekspresi:
let greet = function() { console.log('Hello'); }; greet(); // Output: Hello
Penjelasan: Fungsi ini disimpan dalam variabel
greet
. Fungsi ini juga tidak memiliki parameter dan mencetak "Hello" ke konsol saat dipanggil.
Fungsi Panah:
let greet = () => { console.log('Hello'); }; greet(); // Output: Hello
Penjelasan: Fungsi panah adalah sintaks yang lebih ringkas untuk mendefinisikan fungsi. Fungsi ini tidak memiliki parameter dan mencetak "Hello" ke konsol saat dipanggil.
Fungsi Anonim:
setTimeout(function() { console.log('Hello'); }, 1000);
Penjelasan: Fungsi anonim tidak memiliki nama dan sering digunakan sebagai argumen untuk fungsi lain, seperti
setTimeout
. Fungsi ini akan mencetak "Hello" ke konsol setelah 1 detik.
Fungsi Callback:
function process(callback) { callback(); } process(() => { console.log('Hello'); }); // Output: Hello
Penjelasan: Fungsi
process
menerima fungsi lain sebagai argumen (callback
). Saatprocess
dipanggil, ia menjalankancallback
, yang dalam contoh ini mencetak "Hello" ke konsol.
Fungsi Generator:
function* generator() { yield 1; yield 2; yield 3; } const gen = generator(); console.log(gen.next().value); // Output: 1 console.log(gen.next().value); // Output: 2 console.log(gen.next().value); // Output: 3
Penjelasan: Fungsi generator menggunakan
function*
danyield
untuk menghasilkan nilai satu per satu. Fungsi ini dapat menghentikan dan melanjutkan eksekusi, yang berguna untuk iterasi yang kompleks.
Fungsi Rekursif:
function factorial(n) { if (n === 0) { return 1; } return n * factorial(n - 1); } console.log(factorial(5)); // Output: 120
Penjelasan: Fungsi
factorial
memanggil dirinya sendiri untuk menghitung faktorial dari angkan
. Jikan
adalah 0, fungsi mengembalikan 1 (basis kasus). Jika tidak, fungsi mengembalikann
dikalikan dengan hasil pemanggilan fungsifactorial
dengann - 1
.
Sumber
Fungsi dalam JavaScript memungkinkan Anda untuk membuat kode yang lebih modular, dapat digunakan kembali, dan mudah dibaca. Dengan memahami berbagai jenis fungsi, Anda dapat memilih pendekatan yang paling sesuai untuk kebutuhan spesifik dalam pengembangan aplikasi Anda.
Last updated