Rumah > Artikel > hujung hadapan web > Ringkasan beberapa perkara penting untuk diperhatikan dalam fungsi JavaScript dan kemahiran js anonymous functions_javascript
Izinkan saya memperkenalkan kepada anda fungsi javascript
Sintaks asas fungsiialah:
function functionName(arg0,arg1,...,argN) { statements }
Berikut ialah contoh:
function str(name,age){ document.write("hello my name is " + name + ". and i am " + age + " years old."); } str(" oliver",23); //hello my name is oliver. and i am 23 years old.
Selain itu, sebarang fungsi boleh mengembalikan nilai pada bila-bila masa dengan menggunakan penyata pulangan diikuti dengan nilai yang akan dikembalikan. Seperti:
function sum(num1,num2){ return num1 + num2; alert("hello"); //返回return 之后不会继续执行alert } var result = sum(321,32); document.write(result); //353
Oleh kerana pelaksanaan berhenti dan keluar serta-merta selepas penyata pemulangan, sebarang kod yang terdapat selepas penyata pemulangan tidak akan dilaksanakan.
Sudah tentu, fungsi boleh mengandungi berbilang penyata pulangan. Seperti:
function conp(a,b){ if (a > b){ return a; }else if (a == b){ return "equal"; }else{ return b; } } var result = conp(4,4); document.write(result); //equal var result = conp(321,4); document.write(result); //321
Selain itu, penyata pulangan juga tidak boleh mempunyai sebarang nilai pulangan. Dengan cara ini, pelaksanaan fungsi boleh dihentikan serta-merta dan tidak ditentukan dikembalikan. Seperti:
function conp(a,b){ if (a > b){ return; document.write("bad"); }else{ document.write(b); } } var a = conp(33,3); document.write(a); //返回undefined 且不会出现"bad"
Parameter fungsi
Parameter fungsi ECMAScript boleh menjadi sebarang nombor dan boleh daripada sebarang jenis data. Ia boleh diakses melalui objek argumen dalam badan fungsi, seperti parameter pertama ialah argumen[0], yang kedua ialah argumen[1] dan seterusnya. Parameter yang dinamakan adalah kemudahan tetapi tidak diperlukan. Seperti:
function greeting(){ document.write("hello " + arguments[0] + ". you look " + arguments[1] + "."); } greeting("oliver","good"); //hello oliver. you look good.
Selain itu, anda boleh mendapatkan bilangan parameter yang dihantar ke fungsi dengan mengakses sifat panjang objek argumen. Seperti:
function countArguments(){ document.write("there are " + arguments.length + " arguments here."); } countArguments(321,321,32,32); //there are 4 arguments here.
Anda boleh menggunakan ini untuk membuat pertimbangan dalam kombinasi dengan pernyataan if. Seperti:
function count(){ if (arguments.length == 1){ document.write("you just have 1 arguments."); }else{ document.write("you have many arguments."); } } count(321,321,321) //you have many arguments.
Selain itu, argumen[] boleh digunakan dengan parameter bernama.
Melebihi beban fungsi (tiada lebihan beban)
Jika dua parameter dengan nama yang sama ditakrifkan, pertukaran nama hanya dimiliki oleh fungsi yang ditentukan kemudian. Seperti:
function add(){ document.write(arguments[0] + arguments[1]); } function add(){ document.write(arguments[0] + 100); } add(321,2); //421 不会执行第一个函数(两个参数相加),只执行最后一个同名的函数(第一个参数加上100)
PS: Fungsi tanpa nama JavaScript
Fungsi ialah objek paling fleksibel dalam JavaScript Di sini kami hanya menerangkan penggunaan fungsi tanpa namanya. Fungsi tanpa nama: Ia adalah fungsi tanpa nama fungsi.
1.1 Definisi fungsi, mula-mula memperkenalkan secara ringkas definisi fungsi, yang boleh dibahagikan secara kasar kepada tiga cara
Jenis pertama: Ini juga merupakan jenis yang paling biasa
function double(x){ return 2 * x; }
Kaedah kedua: Kaedah ini menggunakan pembina Fungsi dan menganggap kedua-dua senarai parameter dan badan fungsi sebagai rentetan Ini sangat menyusahkan dan tidak disyorkan.
Jenis ketiga:
1.2 Penciptaan fungsi tanpa nama
Kaedah pertama ialah mentakrifkan fungsi segi empat sama seperti yang dinyatakan di atas, yang juga merupakan salah satu kaedah yang paling biasa digunakan.Cara kedua:
(function(x, y){ alert(x + y); })(2, 3);