Terdapat dua cara untuk mengisytiharkan fungsi dalam JavaScript: pengisytiharan fungsi dan ungkapan fungsi.
Perbezaannya adalah seperti berikut:
1). Untuk fungsi yang ditakrifkan oleh pengisytiharan fungsi, nama fungsi diperlukan, manakala nama fungsi ungkapan fungsi adalah pilihan.
2). Untuk fungsi yang ditakrifkan oleh pengisytiharan fungsi, fungsi boleh dipanggil sebelum pengisytiharan fungsi, manakala fungsi ungkapan fungsi hanya boleh dipanggil selepas pengisytiharan.
3). Fungsi yang ditakrifkan oleh pengisytiharan fungsi bukan pengisytiharan sebenar Ia hanya boleh muncul secara global atau bersarang dalam fungsi lain, tetapi ia tidak boleh muncul dalam gelung, keadaan atau cuba/tangkap/ akhirnya masuk, dan
Ungkapan fungsi boleh diisytiharkan di mana-mana sahaja.
Fungsi ditakrifkan dalam dua cara di bawah:
Javascript yang menarik di bawah:
Hasil keluaran oleh krom jelas mencerminkan ciri-ciri fungsi yang diisytiharkan menggunakan pengisytiharan fungsi-fungsi boleh dipanggil sebelum ia diisytiharkan.
Ralat IE menunjukkan bahawa objek hilang kerana fungsi diisytiharkan dalam keadaan, yang melanggar prinsip pengisytiharan fungsi.
Skop ungkapan fungsi:Jika fungsi yang diisytiharkan oleh ungkapan fungsi mempunyai nama fungsi, maka nama fungsi adalah bersamaan dengan pembolehubah tempatan fungsi dan hanya boleh dipanggil di dalam fungsi tersebut