Fungsi pada JavascriptFungsi adalah salah satu bagian yang paling indah dari Javascript. Sebagai bahasa fungsionalJavascript mengimplementasikan fungsi kelas pertama (first class function). Fungsi dapatdisimpan dalam variabel, dikembalikan oleh fungsi lain, dan dikirimkan sebagai argumen untukfungsi lainnya. Implementasi fungsi yang sangat fleksibel seperti ini membuka banyakkesempatan kepada pengembang untuk menuliskan kode yang bukan hanya berjalan denganbaik, tetapi juga sangat elegan dan indah.Sebuah fungsi membungkus satu atau banyak perintah. Setiap kali kita memanggil fungsi, makaperintah-perintah yang ada di dalam fungsi tersebut dijalankan. Secara umum fungsi digunakanuntuk penggunaan kembali kode (code reuse) dan penyimpanan informasi (information hiding).Implementasi fungsi kelas pertama juga memungkinkan kita menggunakan fungsi sebagai unit-unit yang dapat dikombinasikan, seperti layaknya sebuah lego. Dukungan terhadappemrograman berorientasi objek juga berarti fungsi dapat kita gunakan untuk memberikanperilaku tertentu dari sebuah objek.Dalam sudut pandang tertentu, kita bahkan dapat mengatakan bahwa intisari dari pemrogramanadalah mengubah atau menguraikan kebutuhan pengguna menjadi fungsi dan struktur data.Oke, cukup untuk berbicara tentang cinta penulis terhadap fungsi. Sekarang mari kita lihatlangsungkenapadan apakah fungsi benar-benar seperti yang diceritakan oleh penulis.Pembuatan Fungsi pada JavascriptSebuah fungsi pada Javascript dibuat dengan cara seperti berikut:1234functiontambah(a, b) {hasil=a+b;returnhasil;}Cara penulisan fungsi seperti ini dikenal dengan namafunction declaration, atau deklarasi fungsi.Terdapat empat komponen yang membangun fungsi yang baru kita definisikan di atas, yaitu:1.Kata kuncifunction, yang memberitahu Javascript bahwa kita akan membuat fungsi.2.Nama fungsi, dalam contoh di atas adalahtambah. Dengan memberikan sebuah fungsinama maka kita dapat merujuk ke fungsi tersebut dengan nama yang diberikan. Harusdiingat bawa nama fungsi bersifatopsional, yang berartifungsi pada Javascript tidakharus diberi nama. Kita akan membahas tentang hal ini lebih dalam nanti.3.Daftar parameter fungsi, yaitua,bpada contoh di atas. Daftar parameter ini selaludikelilingi oleh tanda kurung (()). Parameter boleh kosong, tetapi tanda kurung wajibtetap dituliskan. Parameter fungsi akan secara otomatis didefinisikan menjadi variabel I am developing a chrome extension (my fourth question or so...) for facebook, which adds a custom button beside the "like" button. Since posts are added automatically to the news feed without a page refresh, I have to add the script every time new posts are added. And I use The problem is that when the event is called I insert a new element (the button) to the page and it makes a loop! My script:
You can see my previous question here I'm tired of asking questions so I'll really appreciate any answer/comment! Saya sedang mengerjakan Ekstensi di Chrome, dan saya bertanya-tanya: apa cara terbaik untuk mengetahui kapan suatu elemen muncul? Menggunakan javascript biasa, dengan interval yang memeriksa hingga elemen ada, atau apakah jQuery punya cara mudah untuk melakukan ini?
Saya mengalami masalah yang sama, jadi saya melanjutkan dan menulis plugin untuk itu.
Kode:
Berikut ini adalah fungsi inti JavaScript untuk menunggu tampilan elemen. Parameter:
Sebagai contoh, pengaturan Anda dapat mendengarkan acara Ada juga plugin LiveQuery jQuery yang akan mendeteksi kapan elemen baru dibuat:
Anda dapat melakukan
Harap dicatat bahwa ini hanya akan berfungsi jika elemen ada di DOM ketika diminta dari server. Jika elemen ditambahkan secara dinamis melalui JavaScript, elemen itu tidak akan berfungsi dan Anda mungkin perlu melihat jawaban lainnya. Saya menggunakan pendekatan ini untuk menunggu elemen muncul sehingga saya dapat menjalankan fungsi lain setelah itu. Katakanlah fungsi
Untuk pendekatan sederhana menggunakan jQuery, saya menemukan ini berfungsi dengan baik:
Di sini kita cukup memeriksa setiap 500 ms untuk melihat apakah elemen tersebut dimuat, ketika itu, kita dapat menggunakannya. Ini sangat berguna untuk menambahkan penangan klik ke elemen yang telah ditambahkan secara dinamis ke dokumen. Bagaimana dengan insertionQuery library? insertionQuery menggunakan callback Animasi CSS yang dilampirkan pada pemilih yang ditentukan untuk menjalankan callback ketika sebuah elemen dibuat. Metode ini memungkinkan panggilan balik dijalankan setiap kali elemen dibuat, bukan hanya pertama kali. Dari github:
Inilah fungsi yang bertindak sebagai pembungkus tipis di sekitar MutationObserver. Satu-satunya persyaratan adalah bahwa browser mendukung MutationObserver; tidak ada ketergantungan pada JQuery. Jalankan cuplikan di bawah untuk melihat contoh yang berfungsi.
Inilah fungsi Javascript murni yang memungkinkan Anda menunggu apa pun. Atur interval lebih lama untuk mengurangi sumber daya CPU.
Untuk memanggil ini, misalnya di jQuery, gunakan sesuatu seperti:
Inilah solusi Pengembalian Janji di Vanilla Javascript (tanpa panggilan balik yang berantakan) Secara default ia memeriksa setiap 200 ms.
Contoh yang lebih bersih menggunakan MutationObserver:
Cukup tambahkan pemilih yang Anda inginkan. Setelah elemen ditemukan, Anda dapat memiliki akses ke dalam fungsi panggilan balik.
Solusi yang mengembalikan
Contoh:
Berfungsi untuk daftar elemen dan elemen tunggal. |