Rumah >hujung hadapan web >tutorial js >Apakah itu Ungkapan Fungsi yang Dipanggil Segera (IIFE) dalam JavaScript?

Apakah itu Ungkapan Fungsi yang Dipanggil Segera (IIFE) dalam JavaScript?

Susan Sarandon
Susan Sarandonasal
2025-01-04 00:53:42550semak imbas

What is an Immediately-Invoked Function Expression (IIFE) in JavaScript?

Memahami (function() { } )() Construct dalam JavaScript

The (function() { } )() construct, juga dikenali sebagai Ungkapan Fungsi Segera-Invoked (IIFE), ialah corak unik yang digunakan dalam JavaScript untuk mentakrif dan melaksanakan fungsi serta-merta selepas penciptaannya. Tidak seperti pengendali acara, yang dicetuskan oleh peristiwa tertentu, IIFE dilaksanakan sebaik sahaja ia ditemui.

Sintaks dan Struktur

IIFE terdiri daripada dua bahagian utama:

  • Balut Ekspresi: Bahagian pertama melibatkan membungkus ungkapan fungsi dalam kurungan: (function() { } ). Ini mentakrifkan fungsi tetapi belum memanggilnya lagi.
  • Seruan Segera: Untuk melaksanakan fungsi, set kurungan tambahan ditambahkan pada penghujung: (function() { } ) (). Bahagian ini memanggil fungsi dengan segera.

Penjelasan

Kurungan luar mencipta ungkapan yang merangkumi definisi fungsi. Tanda kurung dalam, tanpa hujah, menyebabkan fungsi dilaksanakan secara automatik.

Faedah IIFE

IIFE menawarkan beberapa kelebihan:

  • Privasi ruang nama: Pembolehubah dan fungsi di dalam IIFE adalah skop dalam fungsinya, menghalangnya daripada mencemarkan ruang nama global.
  • Kebolehgunaan Semula Kod: IIFE boleh digunakan untuk memodulasi kod, menjadikannya lebih mudah untuk digunakan semula di bahagian aplikasi yang berlainan.
  • Pengoptimuman Prestasi: Dengan membungkus kod dalam IIFE, penghurai boleh mengoptimumkannya sebelum pelaksanaan.

Contoh

Pertimbangkan blok kod ini:

(function() {
  var myVariable = 'Hello';
  console.log(myVariable);
})();

Apabila kod ini dilaksanakan, pembolehubah myVariable hanya boleh diakses dalam IIFE. Di luar fungsi, ia kekal tidak ditentukan.

Perbezaan daripada document.onload

Walaupun IIFE dan document.onload mungkin kedua-duanya melibatkan pelaksanaan segera, ia berbeza dari segi tujuan. document.onload ialah pengendali acara yang menunggu DOM dimuatkan sebelum melaksanakan fungsinya. IIFE, sebaliknya, melaksanakan bebas daripada sebarang acara dan digunakan terutamanya untuk pengkapsulan dan penggunaan semula kod.

Atas ialah kandungan terperinci Apakah itu Ungkapan Fungsi yang Dipanggil Segera (IIFE) dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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