Rumah hujung hadapan web tutorial js 一个关于javascript匿名函数的问题分析_javascript技巧

一个关于javascript匿名函数的问题分析_javascript技巧

May 16, 2016 pm 05:54 PM
fungsi tanpa nama

匿名函数,就是没有名字的函数。如:

复制代码 代码如下:

function (){
alert('a function');
}

但是,上面的代码会报错。firebug提示:function statement requires a name,也就是:函数必须要有个名字。

奇怪的是,如果我用一对()把这个没有名字的函数包起来,就不会报错了。如:
复制代码 代码如下:

(function (){
alert('a function');
})

(注意包裹函数的()!).虽然这样不会报错,但谁能知道这个函数是否声明成功了呢?是不是因为根本没声明所以才不报错呢?我们这样来测试:让函数自己执行一次:
复制代码 代码如下:

(function (){
alert('a function');
}())

可以看到,函数执行了,表明函数是存在的。

同样,如果这个时候去掉包裹函数的(),则依然会报前面那个错,函数也执行不了。。。
复制代码 代码如下:

function (){
alert('a function');
}()

这对包裹函数的(),真有这么重要?哪位高手解释一下原理呢?
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
2 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
2 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
2 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Penggunaan dan ciri-ciri fungsi tanpa nama C++ Penggunaan dan ciri-ciri fungsi tanpa nama C++ Apr 19, 2024 am 09:03 AM

Fungsi tanpa nama, juga dikenali sebagai ungkapan lambda, ialah fungsi yang tidak menentukan nama dan digunakan untuk kegunaan sekali atau untuk menghantar penunjuk fungsi. Ciri termasuk: tidak mahu dikenali, penggunaan sekali sahaja, penutupan, inferens jenis pulangan. Dalam amalan, ia sering digunakan untuk mengisih atau panggilan fungsi satu masa yang lain.

Analisis senario aplikasi fungsi tanpa nama bagi fungsi Golang Analisis senario aplikasi fungsi tanpa nama bagi fungsi Golang May 16, 2023 pm 10:51 PM

Sebagai bahasa pengaturcaraan moden, Golang (juga dikenali sebagai bahasa Go) mempunyai banyak ciri yang berkuasa. Antaranya, fungsi tanpa nama merupakan konsep yang sangat penting di Golang dan digunakan secara meluas dalam pelbagai senario. Dalam artikel ini, kami akan menganalisis secara mendalam senario aplikasi fungsi tanpa nama dalam fungsi Golang. Pengendali Acara Dalam pengendali acara, fungsi tanpa nama adalah alat yang sangat mudah dan praktikal. Logik tersuai boleh dihantar kepada pengendali acara melalui fungsi tanpa nama, seperti: funcmain(){bt

Bagaimana untuk menggunakan fungsi dan penutupan tanpa nama PHP7 untuk mencapai pemprosesan logik kod yang lebih fleksibel? Bagaimana untuk menggunakan fungsi dan penutupan tanpa nama PHP7 untuk mencapai pemprosesan logik kod yang lebih fleksibel? Oct 21, 2023 am 10:21 AM

Bagaimana untuk menggunakan fungsi dan penutupan tanpa nama PHP7 untuk mencapai pemprosesan logik kod yang lebih fleksibel? Sebelum PHP7, kami sering menggunakan fungsi untuk merangkum sekeping logik tertentu, dan kemudian memanggil fungsi ini dalam kod untuk melaksanakan fungsi tertentu. Walau bagaimanapun, kadangkala kita mungkin perlu menentukan beberapa blok logik sementara dalam kod ini tidak perlu mencipta fungsi bebas, dan pada masa yang sama, kita tidak mahu memperkenalkan terlalu banyak pembolehubah global ke dalam kod. PHP7 memperkenalkan fungsi dan penutupan tanpa nama, yang boleh menyelesaikan masalah ini dengan baik. Fungsi tanpa nama ialah fungsi tanpa nama

Ungkapan Python Lambda: disingkatkan, ringkas, berkuasa Ungkapan Python Lambda: disingkatkan, ringkas, berkuasa Feb 19, 2024 pm 08:10 PM

ungkapan pythonLambda ialah alat yang berkuasa dan fleksibel untuk mencipta kod yang ringkas, boleh dibaca dan mudah digunakan. Ia bagus untuk mencipta fungsi tanpa nama dengan cepat yang boleh dihantar sebagai hujah kepada fungsi lain atau disimpan dalam pembolehubah. Sintaks asas ungkapan Lambda adalah seperti berikut: lambdaarguments:expression Contohnya, ungkapan Lambda berikut menambah dua nombor: lambdax,y:x+y Ungkapan Lambda ini boleh dihantar ke fungsi lain sebagai argumen seperti berikut: defsum( x ,y):returnx+yresult=sum(lambdax,y:x+y,1,2)Dalam contoh ini

Fungsi tanpa nama dalam PHP8.0 Fungsi tanpa nama dalam PHP8.0 May 14, 2023 am 08:31 AM

PHP8.0 ialah versi terkini bahasa pengaturcaraan PHP. Satu kemas kini penting ialah penambahbaikan dan peningkatan kepada fungsi tanpa nama. Fungsi tanpa nama (juga dipanggil penutupan) ialah jenis fungsi khas yang boleh dibuat secara dinamik pada masa jalan dan dihantar ke fungsi lain atau disimpan dalam pembolehubah. Dalam PHP, fungsi tanpa nama adalah penting untuk pengaturcaraan lanjutan dan pembangunan web. PHP8.0 menyediakan beberapa sintaks dan ciri baharu yang menjadikan fungsi tanpa nama lebih fleksibel dan lebih mudah untuk digunakan. Beberapa kemas kini adalah seperti berikut: Taipkan pengisytiharan untuk parameter fungsi dalam PHP8.0,

Bolehkah fungsi tanpa nama Golang mengembalikan berbilang nilai? Bolehkah fungsi tanpa nama Golang mengembalikan berbilang nilai? Apr 13, 2024 pm 04:09 PM

Ya, fungsi tanpa nama dalam bahasa Go boleh mengembalikan berbilang nilai. Sintaks: func(arg1,arg2,...,argN)(ret1,ret2,...,retM){//Function body}. Penggunaan: Gunakan operator := untuk menerima nilai pulangan menggunakan kata kunci pulangan untuk mengembalikan berbilang nilai.

Ungkapan Lambda Python: Menjadikan Pengaturcaraan Lebih Mudah Ungkapan Lambda Python: Menjadikan Pengaturcaraan Lebih Mudah Feb 19, 2024 pm 09:54 PM

Ungkapan Lambda python ialah fungsi kecil tanpa nama yang menyimpan ungkapan dalam pembolehubah dan mengembalikan nilainya. Ungkapan Lambda sering digunakan untuk melaksanakan tugas mudah yang boleh dicapai dengan menulis fungsi yang berasingan, tetapi ungkapan Lambda boleh menjadikan kod lebih ringkas dan boleh dibaca. Sintaks ungkapan Lambda adalah seperti berikut: lambdaarguments: expressionarguments ialah senarai parameter yang diterima oleh ungkapan Lambda dan ungkapan ialah badan ungkapan Lambda, yang mengandungi kod yang perlu dilaksanakan. Sebagai contoh, ungkapan Lambda berikut menambah dua nombor dan mengembalikan jumlahnya: lambdax,

Ekspresi Python Lambda: Mendedahkan kuasa fungsi tanpa nama Ekspresi Python Lambda: Mendedahkan kuasa fungsi tanpa nama Feb 24, 2024 am 09:01 AM

Ungkapan Lambda dalam python ialah satu lagi bentuk sintaks bagi fungsi tanpa nama. Ia adalah fungsi kecil tanpa nama yang boleh ditakrifkan di mana-mana dalam program. Ungkapan lambda terdiri daripada senarai parameter dan ungkapan, yang boleh berupa sebarang ungkapan Python yang sah. Sintaks ungkapan Lambda adalah seperti berikut: lambdaargument_list:expression Sebagai contoh, ungkapan Lambda berikut mengembalikan jumlah dua nombor: lambdax,y:x+y ini boleh dihantar ke fungsi lain, seperti peta () fungsi: nombor=[ 1,2,3,4,5]hasil=peta(lambda

See all articles