


Mari kita bincangkan tentang definisi dan penggunaan asas fungsi JavaScript
Artikel ini membawa anda pengetahuan yang berkaitan tentang javascript Ia terutamanya mengatur isu yang berkaitan dengan definisi dan penggunaan asas fungsi, termasuk definisi dengan penyataan fungsi, panggilan fungsi dan tidak ditentukan Mari kita lihat pada yang sebenar. parameter dan sebagainya. Saya harap ia akan membantu semua orang.
[Cadangan berkaitan: tutorial video javascript, bahagian hadapan web]
1 penyataan fungsi
Mari kita berikan contoh dahulu Fungsi fungsi ini adalah untuk mengembalikan jumlah elemen tatasusunan
function sumArray(arr) { var sum = 0; for(var i = 0,aLength = arr.length;i < aLength;i++) { sum += arr[i]; } return sum; }
Ada ruang selepas kata kunci function
, dan sumArray
ialah fungsi Nama mempunyai konvensyen penamaan yang sama seperti nama pembolehubah: hanya boleh mempunyai huruf, nombor, garis bawah dan tanda dolar serta tidak boleh bermula dengan nombor atau menjadi kata kunci.
Parameter dalam kurungan juga dipanggil parameter formal dan hanya nama parameter diperlukan. Parameter boleh 0
, 1
atau lebih, dipisahkan dengan ,
dan {}
mengandungi badan fungsi . Mengandungi satu atau lebih pernyataan. Badan fungsi digunakan untuk melaksanakan fungsi fungsi.
kata kuncireturn
diikuti dengan nilai pulangan fungsi tersebut juga boleh tidak mempunyai nilai pulangan. Selepas fungsi selesai berjalan, return
ayat ini di sini akan keluar dari pelaksanaan, dan return
ayat berikut tidak akan dijalankan lagi . Nilai pulangan ialah output fungsi.
Untuk fungsi yang ditakrifkan dengan cara ini, anda boleh memanggil fungsi sebelum dan selepas definisi fungsi, selagi fungsi dan pernyataan yang memanggil fungsi itu berada dalam fail sumber yang sama .
2. Gunakan definisi ungkapan
Untuk mentakrifkan fungsi dalam bentuk ungkapan ialah menggunakan ungkapan tugasan untuk menetapkan fungsi kepada pembolehubah Ini sebenarnya untuk melihat fungsi sebagai pembolehubah. Pada masa ini, fungsi boleh mempunyai nama atau tiada nama Fungsi tanpa nama dipanggil fungsi tanpa nama.
- dengan nama;
var funct = function getMax(a,b) { return a>b?a:b; };//注意这后面的分号不能少,因为我们定义的是一个变量!
dan ditakrifkan menggunakan pernyataan fungsi Perbezaan antara ialah ia hanya boleh ditakrifkan selepas pernyataan definisi fungsi Panggil fungsi ini, dan apabila memanggil, anda hanya boleh menggunakan nama pembolehubah funct
, bukan nama fungsi getMax
, seperti:
var funct = function getMax(a,b) { return a>b?a:b; }; console.log(funct(1,2));//输出2
- fungsi tanpa nama ;
Fungsi yang dipanggil tanpa nama ialah senarai parameter terus selepas kata kuncifunction
:
var funct = function(a,b) { return a>b?a:b; };
Fungsi ini tidak mempunyai nama, ia diperuntukkan kepada pembolehubah funct
, jadi ia dipanggil fungsi tanpa nama . Begitu juga, hanya boleh memanggil fungsi ini selepas pernyataan ini.
var funct = function(a,b) { return a>b?a:b; }; console.log(funct(1,2));//输出2
Ringkasan: Mentakrifkan fungsi dengan ungkapan sedia untuk digunakan Setelah ditakrifkan, fungsi hanya boleh dipanggil selepas pernyataan ini
3. . Panggilan fungsi
Dalam latihan 4, kami telah memperkenalkan bahawa objek boleh mempunyai kaedah sendiri, yang tentunya juga merupakan fungsi. Panggilan fungsi ini sedikit berbeza daripada fungsi yang ditakrifkan dalam dua peringkat sebelumnya.
//函数的定义:求三个数的最大值 function max(a,b,c) { if(a > b) { if(a > c) return a; else return c; } else { if(b > c) return b; else return c; } } //调用该函数 var result = max(1,2,3);//result为3 console.log(result);//输出3
Apabila memanggil fungsi, anda perlu memasukkan bilangan nilai tertentu yang sama seperti parameter formal Fungsi di atas mempunyai parameter 3
, jadi apabila memanggil yang berikut, masukkan 3
nilai khusus. Nilai 1
dihantar ke parameter a
, 2
dihantar ke parameter b
dan 3
dihantar ke parameter c
. Nilai pulangan fungsi dihantar kepada pembolehubah =
melalui simbol tugasan result
. Jika tiada kata kunci return
dalam badan fungsi, undefined
akan dikembalikan. Fungsi panggilan yang ditakrifkan dalam objek
:
var ob = { id:1, getMax:function(a,b) { return a>b?a:b; } }; var result = ob.getMax(2,1);//result值为2 var result1 = ob["getMax"](2,1);//result1的值也是2
Perbezaan daripada di atas ialah untuk mencari fungsi di sini, anda perlu menggunakan 对象名.函数名
atau 对象名["函数名"]
, yang lain ialah sama.
4. Parameter sebenar tidak ditentukan
Dalam kebanyakan bahasa pengaturcaraan, nombor dan jenis parameter sebenar yang dihantar semasa memanggil fungsi diperiksa dan JavaScript
kedua-duanyaTidak menyemak jenis parameter sebenar, ia juga tidak menyemak bilangan parameter sebenar. Parameter sebenar dalam JavaScript
akan sepadan dengan parameter formal mengikut urutan dari kiri ke kanan , contohnya:
function myFunction(a,b,c) { console.log(a); console.log(b); console.log(c); } myFunction(1,2,3);
parameter sebenar1
parameter formal masuka
, parameter sebenar 2
diluluskan dalam parameter formal b
dan parameter sebenar 3
diluluskan dalam parameter formal c
. Apabila bilangan parameter sebenar kurang daripada parameter formal, nilai undefined
akan dihantar ke parameter formal yang betul. Contohnya:
function myFunction(a,b,c) { console.log(a); console.log(b); console.log(c); } myFunction(1,2);
parameter sebenar1
lulus dalam parameter formala
, parameter sebenar2
lulus dalam parameter formalb
, undefined
lulus dalam parameter formalc
. Jika anda hanya mahu menghantar data kepada parameter di sebelah kanan, anda boleh menghantar undefined
kepada beberapa parameter sebenar yang pertama. Contohnya:
function myFunction(a,b,c){ console.log(a); console.log(b); console.log(c); } myFunction(undefined,1,2);
Dua kaedah di atas tidak cukup ketat Amalan terbaik ialah menetapkan undefined
nilai lalai untuk parameter formal yang mungkin dihantar dalam nilai . Seperti:
function getSum(a,b,c) { if(c === undefined) c = 0; console.log(a+b+c); } myFunction(1,2);
5.实参对象
JavaScript
一切都是对象,实参也是一个对象,有一个专门的名字arguments
,这个对象可以看成一个数组(类数组,不是真的数组),实参从左到右分别是arguments[0]、arguments[1]...
,arguments.length
表示实参的个数。
//求参数的和 function getSum() { var aLength = arguments.length; var sum = 0; for(var i = 0;i < aLength;i++) { sum += arguments[i]; } return sum; } console.log(getSum(1,2,3,4,5))//输出15
这里的形参直接省略,使用arguments[i]
表示。
6.对象作为参数
复杂的函数通常多达十几个参数,尽管JavaScript
不做参数个数和类型的检查,但是调用时实参的顺序不能乱。开发人员需要检查每一个实参和形参的对应关系,这样效率很低。一种很好的解决方案是使用对象作为参数,函数会根据对象的属性名操作参数。
function myFunction(obj) { console.log(obj.name); obj.number++; return obj.number; } myObj = {name:"myObj",number:34}; myFunction(myObj);//输出myObj console.log(myObj.number);//输出35
7.函数对象作为另一个函数的参数
一个函数(为方便行文,称为a
函数)可以作为另外一个函数(称为b
函数)的参数,b
函数最终可以返回一个具体的值。
从原理上来说,b
函数在自己的函数体内调用了a
函数,所以需要把a
函数的名字作为实际参数传递给b
函数。如下:
//求最大值 function getMax(a,b) { return a>b?a:b; } //求最小值 function getMin(a,b) { return a<b?a:b; } //下面这个函数以函数作为参数,并最终返回一个值 function getM(func,num1,num2) { return func(num1,num2); } getM(getMax,1,2);//返回2 getM(getMin,1,2);//返回1
我们把a
函数的名字(getMax
或者getMin
)传给b
函数(getM()
),然后在b
函数内部调用传入的a
函数,得到相关的结果。
【相关推荐:javascript视频教程、web前端】
Atas ialah kandungan terperinci Mari kita bincangkan tentang definisi dan penggunaan asas fungsi JavaScript. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Cara menggunakan WebSocket dan JavaScript untuk melaksanakan sistem pengecaman pertuturan dalam talian Pengenalan: Dengan perkembangan teknologi yang berterusan, teknologi pengecaman pertuturan telah menjadi bahagian penting dalam bidang kecerdasan buatan. Sistem pengecaman pertuturan dalam talian berdasarkan WebSocket dan JavaScript mempunyai ciri kependaman rendah, masa nyata dan platform merentas, dan telah menjadi penyelesaian yang digunakan secara meluas. Artikel ini akan memperkenalkan cara menggunakan WebSocket dan JavaScript untuk melaksanakan sistem pengecaman pertuturan dalam talian.

WebSocket dan JavaScript: Teknologi utama untuk merealisasikan sistem pemantauan masa nyata Pengenalan: Dengan perkembangan pesat teknologi Internet, sistem pemantauan masa nyata telah digunakan secara meluas dalam pelbagai bidang. Salah satu teknologi utama untuk mencapai pemantauan masa nyata ialah gabungan WebSocket dan JavaScript. Artikel ini akan memperkenalkan aplikasi WebSocket dan JavaScript dalam sistem pemantauan masa nyata, memberikan contoh kod dan menerangkan prinsip pelaksanaannya secara terperinci. 1. Teknologi WebSocket

Pengenalan kepada cara menggunakan JavaScript dan WebSocket untuk melaksanakan sistem pesanan dalam talian masa nyata: Dengan populariti Internet dan kemajuan teknologi, semakin banyak restoran telah mula menyediakan perkhidmatan pesanan dalam talian. Untuk melaksanakan sistem pesanan dalam talian masa nyata, kami boleh menggunakan teknologi JavaScript dan WebSocket. WebSocket ialah protokol komunikasi dupleks penuh berdasarkan protokol TCP, yang boleh merealisasikan komunikasi dua hala masa nyata antara pelanggan dan pelayan. Dalam sistem pesanan dalam talian masa nyata, apabila pengguna memilih hidangan dan membuat pesanan

Cara menggunakan WebSocket dan JavaScript untuk melaksanakan sistem tempahan dalam talian Dalam era digital hari ini, semakin banyak perniagaan dan perkhidmatan perlu menyediakan fungsi tempahan dalam talian. Adalah penting untuk melaksanakan sistem tempahan dalam talian yang cekap dan masa nyata. Artikel ini akan memperkenalkan cara menggunakan WebSocket dan JavaScript untuk melaksanakan sistem tempahan dalam talian dan memberikan contoh kod khusus. 1. Apakah itu WebSocket? WebSocket ialah kaedah dupleks penuh pada sambungan TCP tunggal.

JavaScript dan WebSocket: Membina sistem ramalan cuaca masa nyata yang cekap Pengenalan: Hari ini, ketepatan ramalan cuaca sangat penting kepada kehidupan harian dan membuat keputusan. Apabila teknologi berkembang, kami boleh menyediakan ramalan cuaca yang lebih tepat dan boleh dipercayai dengan mendapatkan data cuaca dalam masa nyata. Dalam artikel ini, kita akan mempelajari cara menggunakan teknologi JavaScript dan WebSocket untuk membina sistem ramalan cuaca masa nyata yang cekap. Artikel ini akan menunjukkan proses pelaksanaan melalui contoh kod tertentu. Kami

Penggunaan: Dalam JavaScript, kaedah insertBefore() digunakan untuk memasukkan nod baharu dalam pepohon DOM. Kaedah ini memerlukan dua parameter: nod baharu untuk dimasukkan dan nod rujukan (iaitu nod di mana nod baharu akan dimasukkan).

Tutorial JavaScript: Bagaimana untuk mendapatkan kod status HTTP, contoh kod khusus diperlukan: Dalam pembangunan web, interaksi data dengan pelayan sering terlibat. Apabila berkomunikasi dengan pelayan, kami selalunya perlu mendapatkan kod status HTTP yang dikembalikan untuk menentukan sama ada operasi itu berjaya dan melaksanakan pemprosesan yang sepadan berdasarkan kod status yang berbeza. Artikel ini akan mengajar anda cara menggunakan JavaScript untuk mendapatkan kod status HTTP dan menyediakan beberapa contoh kod praktikal. Menggunakan XMLHttpRequest

JavaScript ialah bahasa pengaturcaraan yang digunakan secara meluas dalam pembangunan web, manakala WebSocket ialah protokol rangkaian yang digunakan untuk komunikasi masa nyata. Menggabungkan fungsi berkuasa kedua-duanya, kami boleh mencipta sistem pemprosesan imej masa nyata yang cekap. Artikel ini akan memperkenalkan cara untuk melaksanakan sistem ini menggunakan JavaScript dan WebSocket, dan memberikan contoh kod khusus. Pertama, kita perlu menjelaskan keperluan dan matlamat sistem pemprosesan imej masa nyata. Katakan kita mempunyai peranti kamera yang boleh mengumpul data imej masa nyata
