Ringkasan. dalam tutorial ini, Anda akan belajar tentang JavaScript yang segera memanggil ekspresi fungsi (IIFE) Show TL;DREkspresi fungsi yang segera dipanggil JavaScript adalah fungsi yang didefinisikan sebagai ekspresi dan dieksekusi segera setelah dibuat. Berikut ini menunjukkan sintaks untuk mendefinisikan ekspresi fungsi yang langsung dipanggil
Mengapa IIFESaat Anda mendefinisikan suatu fungsi, mesin JavaScript menambahkan fungsi tersebut ke objek global. Lihat contoh berikut _ Di browser web, mesin JavaScript menambahkan fungsi 3 ke objek global 4
Demikian pula, jika Anda mendeklarasikan variabel di luar fungsi menggunakan kata kunci 5, mesin JavaScript juga menambahkan variabel ke objek global _ Jika Anda memiliki banyak variabel dan fungsi global, mesin JavaScript hanya akan melepaskan memori yang dialokasikan untuknya hingga objek global kehilangan cakupannya Akibatnya, skrip dapat menggunakan memori secara tidak efisien. Selain itu, memiliki variabel dan fungsi global kemungkinan besar akan menyebabkan benturan nama Salah satu cara untuk mencegah fungsi dan variabel mencemari objek global adalah dengan menggunakan ekspresi fungsi yang langsung dipanggil Dalam JavaScript, Anda dapat memiliki ekspresi berikut
Sintaks ini benar meskipun ekspresi tidak berpengaruh. Suatu fungsi dapat juga dideklarasikan sebagai ekspresi yang disebut ekspresi fungsi _ Dalam sintaks ini, bagian di sisi kanan operator penugasan( 6) adalah ekspresi fungsi. Karena fungsi adalah ekspresi, Anda dapat membungkusnya di dalam tanda kurung
Dalam contoh ini, variabel _7 direferensikan sebagai fungsi anonim yang menambahkan dua argumen Selain itu, Anda dapat menjalankan fungsi tersebut segera setelah membuatnya
Dalam contoh ini, variabel _7 menampung hasil pemanggilan fungsi Ekspresi berikut disebut ekspresi fungsi yang segera dipanggil (IIFE) karena fungsi dibuat sebagai ekspresi dan dieksekusi segera
Ini adalah sintaks umum untuk mendefinisikan IIFE
Perhatikan bahwa Anda dapat menggunakan fungsi panah untuk menentukan IIFE _0 Dengan menempatkan fungsi dan variabel di dalam ekspresi fungsi yang langsung dipanggil, Anda dapat menghindari pencemarannya ke objek global _1 Dinamakan IIFEIIFE dapat memiliki nama. Namun, itu tidak dapat dipanggil lagi setelah eksekusi _2 IIFE dimulai dengan titik koma (;)Terkadang, Anda mungkin melihat IIFE yang dimulai dengan titik koma (;) _3 Dalam sintaks ini, titik koma digunakan untuk mengakhiri pernyataan jika dua atau lebih file JavaScript digabungkan secara membabi buta menjadi satu file Misalnya, Anda mungkin memiliki dua file _9 dan 0 yang menggunakan IIF _4 Jika Anda menggunakan alat pembuat kode untuk menggabungkan kode dari kedua file menjadi satu file, tanpa titik koma ( 1) kode JavaScript yang digabungkan akan menyebabkan kesalahan sintaksis IIFE beraksiMisalkan Anda memiliki perpustakaan bernama kalkulator. js dengan fungsi berikut _5 Dan Anda memuat _2 dalam dokumen HTML Nanti, Anda juga ingin memuat pustaka JavaScript lain bernama 3 ke dokumen yang sama _6 3 juga memiliki fungsi 3 _7 Saat Anda menggunakan fungsi 3 dalam dokumen HTML, fungsi ini mengembalikan string 7 alih-alih jumlah dari dua angka _8 Ini karena fungsi 3 di 3 menimpa fungsi 3 di perpustakaan 2 Untuk mengatasinya, Anda bisa menerapkan IIFE di kalkulator. js sebagai berikut _9 IIFE mengembalikan objek yang berisi metode 2 dan 3 yang mereferensikan fungsi 3 dan 5. Dalam dokumen HTML, Anda dapat menggunakan perpustakaan 2 sebagai berikut 0 7 memanggil fungsi 3 yang diekspor oleh 2 sedangkan panggilan kedua ke fungsi 3 mereferensikan fungsi 3 di 3 jQuery & IIFEDokumen HTML berikut menggunakan pustaka jQuery 1 Saat Anda mengimpor pustaka jQuery, Anda dapat mengakses banyak fungsi jQuery yang berguna melalui objek 3 atau 4. Di bawah tenda, jQuery menggunakan IIFE untuk mengekspos fungsinya Dengan melakukan ini, jQuery hanya perlu menggunakan satu variabel global ( 3) untuk mengekspos banyak fungsi tanpa mencemari objek global Contoh berikut mengilustrasikan cara mengubah objek $ jQuery menjadi _ di dalam IIFE 2 Dalam contoh ini, kami meneruskan objek jQuery ke IIFE dan menggunakan argumen 6 sebagai gantinya Dalam tutorial ini, Anda akan belajar tentang ekspresi fungsi yang segera dipanggil JavaScript (IIFE) dan tujuannya Mengapa menggunakan ekspresi fungsi yang langsung dipanggil?Ekspresi fungsi yang langsung dipanggil dapat digunakan untuk menghindari variabel mengangkat dari dalam blok, melindungi dari pencemaran lingkungan global dan secara bersamaan memungkinkan akses publik ke metode sambil mempertahankan privasi untuk variabel yang ditentukan dalam fungsi
Apa tujuan utama dari fungsi pemanggilan otomatis?Fungsi Self-Invoking adalah jenis fungsi yang dipanggil atau dipanggil secara otomatis setelah definisinya ketika diikuti oleh set tanda kurung () dan terutama digunakan untuk tugas inisialisasi
Apa fungsi langsung dalam JavaScript?IIFE (Immediately Invoked Function Expression) adalah fungsi JavaScript yang berjalan segera setelah didefinisikan . Nama IIFE dipromosikan oleh Ben Alman dalam blognya. (fungsi () { // … })();
Di mana kita bisa menggunakan IIFE di JavaScript?Ini adalah fungsi JavaScript yang berjalan segera setelah didefinisikan. IIFE (Immediately Invoked Function Expression) dapat digunakan untuk menghindari pengangkatan variabel dari dalam blok . Ini memungkinkan akses publik ke metode sambil mempertahankan privasi untuk variabel yang ditentukan dalam fungsi. |