Dalam js, anda boleh menggunakan kata kunci fungsi atau fungsi Function() untuk mengisytiharkan dan mentakrifkan fungsi, dengan sintaks "function funName([parameter list]){...}" atau "var funName = new Fungsi([ Senarai parameter, badan])".
Persekitaran pengendalian tutorial ini: sistem Windows 7, versi JavaScript 1.8.5, komputer Dell G3.
Pengisytiharan dan takrifan fungsi dalam javascript
1. Gunakan kata kunci fungsi
sintaks :
function funName([参数列表]) { statements }
funName ialah nama fungsi, yang seperti nama pembolehubah mestilah pengecam JavaScript yang sah. Mengikuti nama fungsi ialah senarai parameter yang disertakan dalam kurungan dan dipisahkan dengan koma. Parameter adalah pilihan dan tiada had pada nombor.
Sebagai pengecam, parameter hanya diakses dalam badan fungsi dan parameter ialah ahli persendirian skop fungsi. Apabila memanggil fungsi, hantar nilai kepada fungsi, kemudian gunakan parameter untuk mendapatkan nilai yang diluluskan secara luaran, dan campur tangan dalam menjalankan fungsi dalam badan fungsi.
Selepas kurungan ialah kurungan Penyataan yang terkandung dalam kurungan adalah kandungan utama struktur badan fungsi. Dalam badan fungsi, pendakap kerinting adalah penting Tanpa pendakap kerinting, JavaScript akan membuang ralat sintaks.
Contoh
Pernyataan fungsi mesti mengandungi nama fungsi, kurungan dan kurungan, dan kod lain boleh ditinggalkan, jadi badan fungsi paling mudah ialah fungsi kosong.
function funName() {} //空函数
Jika menggunakan fungsi tanpa nama, nama fungsi boleh ditinggalkan.
function () {} //匿名空函数
Pernyataan var dan pernyataan fungsi ialah kedua-dua pernyataan pengisytiharan, dan pembolehubah serta fungsi yang diisytiharkan dihuraikan semasa prapenyusun JavaScript, juga dikenali sebagai promosi pembolehubah dan promosi fungsi. Semasa tempoh pra-penyusun, enjin JavaScript mencipta konteks untuk setiap fungsi, mentakrifkan objek pembolehubah dan mendaftarkan semua parameter formal, pembolehubah peribadi dan fungsi bersarang dalam fungsi sebagai atribut pada objek berubah.
2. Gunakan fungsi Function()
Gunakan pembina Function() untuk menjana fungsi dengan cepat. Penggunaan khusus adalah seperti berikut:
var funName = new Function([参数列表,body]);
Jenis parameter Function() adalah semua rentetan, badan mewakili penyataan struktur fungsi bagi fungsi yang dicipta dan penyataan badan dipisahkan dengan koma bertitik.
Contoh 1
Anda boleh meninggalkan semua parameter dan hanya menghantar rentetan untuk mewakili badan fungsi.
var f = new Function ("a", "b", "return a+b"); //通过构造函数来克隆函数结构
Dalam kod di atas, f ialah nama fungsi yang dicipta. Fungsi yang sama ditakrifkan, dan fungsi dengan struktur yang sama boleh direka bentuk menggunakan pernyataan fungsi.
function f(a, b) { //使用function语句定义函数结构 return a + b; }
Contoh 2
Gunakan pembina Function() untuk mencipta struktur fungsi kosong tanpa menyatakan sebarang parameter.
var f = new Function(); //定义空函数
Contoh 3
Dalam parameter pembina Function(), p1~pn ialah senarai nama parameter, iaitu, p1 bukan sahaja boleh mewakili satu parameter, tetapi juga boleh dipisahkan oleh senarai parameter koma. Kaedah definisi berikut adalah setara.
var f = new Function("a", "b", "c", "return a+b+c"); var f = new Function("a, b, c", "return a+b+c"); var f = new Function("a,b", "c", "return a+b+c");
Menggunakan pembina Function() bukanlah perkara biasa kerana badan fungsi biasanya mengandungi banyak kod Jika kod ini dihantar sebagai baris rentetan, kebolehbacaan kod akan menjadi lemah. .
Menggunakan pembina Function() boleh mencipta fungsi secara dinamik, yang tidak mengehadkan pengguna kepada badan fungsi yang dipraisytiharkan oleh penyataan fungsi. Menggunakan pembina Function() membolehkan fungsi digunakan sebagai ungkapan dan bukannya sebagai struktur, jadi ia lebih fleksibel untuk digunakan. Kelemahannya ialah pembina Function() disusun semasa pelaksanaan, kecekapan pelaksanaan adalah sangat rendah, dan penggunaannya secara amnya tidak disyorkan.
[Cadangan berkaitan: tutorial pembelajaran javascript]
Atas ialah kandungan terperinci Apa yang digunakan untuk mengisytiharkan fungsi dalam javascript. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!