Rajah 2 memanggil fungsi dalam Rajah 1, dan outputnya Undefined, tetapi dalam Rajah 2, kod yang sama dalam acara klik JQ menghasilkan hasil output. Kemudian saya mengisytiharkan obj pembolehubah dalam fungsi ujian untuk mendapatkan semua objek dengan atribut name=component_checkbox[]. Pada masa ini, terdapat output apabila memanggil fungsi ini dalam acara klik JQ. Soalan saya ialah mengapa ujian() dalam Rajah 2 tidak mengeluarkan keputusan tetapi tidak ditentukan apabila kod dalam Rajah 1 digunakan?
Ganti gambar 2 dengan ini:
MDN - Function.prototype.call
Oleh kerana skop ini berbeza, ini dalam penutupan klik merujuk kepada kotak pilihan yang anda pilih, dan dalam fungsi ujian, ini merujuk kepada tetingkap atau objek lain
$(this)
dalam Rajah 1 tidak mempunyai nilai penunjuk