--- title: ungkapan fungsi slug: Web/JavaScript/Reference/Operators/function tags: - Fungsi - JavaScript - Operator - Ungkapan Utama translation_of: Web/JavaScript/Reference/Operators/function original_slug: Web/JavaScript/Reference/Operators/fungsi ---
fungsi
digunakan untuk mendefinisikan fungsi
dalam sebuah ungkapan.function [nama]([param1[, param2[, ..., paramN]]]) { pernyataan }
nama
paramN
pernyataan
Sintaksis ungkapan fungsi nyaris sama apabila dibandingkan dengan sintaksis pernyataan fungsi(lihat pernyataan fungsi untuk lebih jelasnya). Perbedaan utama antara ungkapan fungsi dengan pernyataan fungsi ialah; ungkapan fungsi memperbolehkan nama fungsi untuk tidak digunakan/dihilangkan apabila ungkapan fungsi tersebut merupakan fungsi anonim. Ungkapan fungsi dapat digunakan sebagai IIFE (immediately Invoked Function Expression), sebuah fungsi yang otomatis dijalankan apabila didefinisikan. Untuk informasi lebih lanjut, lihat juga bab tentang fungsi.
Dibawah ini merupakan contoh definisi sebuah fungsi tanpa nama yang kemudian ditugaskan kedalam variabel x
:
var x = function(y) { return y * y; };
Apabila sebuah fungsi hendak dipanggil dari dalam tubuh fungsi itu sendiri, pergunakanlah ungkapan fungsi bernama. Nama fungsi bersifat lokal relatif terhadap tubuh fungsi. Manfaat penggunaan ungkapan fungsi bernama ialah menghindarkan penggunaan properti non-standar arguments.callee
.
var math = { 'factorial': function factorial(n) { if (n <= 1) return 1; return n * factorial(n - 1); } };
Spesifikasi | Status | Komentar |
---|---|---|
{{SpecName('ESDraft', '#sec-function-definitions', 'Function definitions')}} | {{Spec2('ESDraft')}} | |
{{SpecName('ES6', '#sec-function-definitions', 'Function definitions')}} | {{Spec2('ES6')}} | |
{{SpecName('ES5.1', '#sec-13', 'Function definition')}} | {{Spec2('ES5.1')}} | |
{{SpecName('ES3', '#sec-13', 'Function definition')}} | {{Spec2('ES3')}} | Definisi awal. Diterapkan pada JavaScript 1.5. |
{{CompatibilityTable}}
Fitur | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
Dukungan Mendasar | {{CompatVersionUnknown}} | {{CompatVersionUnknown}} | {{CompatVersionUnknown}} | {{CompatVersionUnknown}} | {{CompatVersionUnknown}} |
Fitur | Android | Chrome for Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Dukungan Mendasar | {{CompatVersionUnknown}} | {{CompatVersionUnknown}} | {{CompatVersionUnknown}} | {{CompatVersionUnknown}} | {{CompatVersionUnknown}} | {{CompatVersionUnknown}} |