Alur Program · Pelajaran 6 dari 10
Fungsi dan arrow function
9 menit baca · BelajarCode
Deklarasi fungsi
1function luasPersegiPanjang(panjang, lebar) {2 return panjang * lebar;3}45console.log(luasPersegiPanjang(4, 3));6console.log(luasPersegiPanjang(5, 4) + luasPersegiPanjang(2, 2));12 24
Parameter dengan nilai bawaan
1function sapa(nama, salam = "Halo") {2 return `${salam}, ${nama}!`;3}45console.log(sapa("Bima"));6console.log(sapa("Bima", "Selamat pagi"));Halo, Bima! Selamat pagi, Bima!
Arrow function
Arrow function adalah cara ringkas menulis fungsi. Jika isinya hanya satu ekspresi, kurung kurawal dan return boleh dihilangkan.
1const kuadrat = (x) => x * x;2const rataRata = (a, b, c) => (a + b + c) / 3;3const keteranganNilai = (nilai) => {4 if (nilai >= 75) return "tuntas";5 return "remedial";6};78console.log(kuadrat(7));9console.log(rataRata(80, 90, 85));10console.log(keteranganNilai(70));49 85 remedial
Fungsi sebagai nilai
Di JavaScript, fungsi bisa disimpan di variabel dan dikirim ke fungsi lain. Fungsi yang dikirim seperti ini disebut callback.
1function ulangi(kali, aksi) {2 for (let i = 1; i <= kali; i++) {3 aksi(i);4 }5}67ulangi(3, (ke) => console.log(`Langkah ${ke}`));Langkah 1 Langkah 2 Langkah 3
Pola callback ini sangat sering dipakai, misalnya untuk menentukan apa yang terjadi saat tombol ditekan.
Ruang lingkup blok
Variabel let dan const hanya berlaku di dalam blok { } tempat ia dibuat.
1const pesan = "di luar";2if (true) {3 const pesan = "di dalam";4 console.log(pesan);5}6console.log(pesan);di dalam di luar
Cek pemahaman
Apa hasil const tambah = (a, b = 10) => a + b; lalu console.log(tambah(5));?
Latihan
Konversi suhu
Buat dua arrow function: keFahrenheit(c) dengan rumus c × 9 / 5 + 32 dan keKelvin(c) dengan rumus c + 273.15. Tampilkan konversi untuk 0, 37, dan 100 derajat Celsius.
Pembahasan
1const keFahrenheit = (c) => c * 9 / 5 + 32;2const keKelvin = (c) => c + 273.15;34for (const c of [0, 37, 100]) {5 console.log(`${c} C = ${keFahrenheit(c)} F = ${keKelvin(c)} K`);6}0 C = 32 F = 273.15 K 37 C = 98.6 F = 310.15 K 100 C = 212 F = 373.15 K
Jalankan contoh kode di pelajaran ini tanpa instalasi lewat compiler JavaScript online.