$('.dom').on('click', function () {
function test() {
console.log('abc');
}
});
Ujian fungsi diisytiharkan setiap kali ia diklik, dan kemudian panggil balik klik dilaksanakan dan GCed Jika dom diklik lebih daripada sekali, maka setiap panggilan balik klik akan mempunyai satu lagi pengisytiharan fungsi benarkan pengisytiharan fungsi ditulis bukankah keadaan semasa dalam gelung serupa? Jadi apakah cara terbaik untuk menanganinya? Sekiranya saya mengalihkan kedudukan pengisytiharan fungsi ujian ke luar Ini akan menyebabkan penutupan dan fungsi ujian tidak boleh dikitar semula Jika pengguna hanya menggunakan logik ini, ia akan menjadi kerugian. Apa yang perlu saya lakukan? ~
Terdapat perbezaan antara gelung dan fungsi.
Gelung bukan skop bebas, jadi pengisytiharan fungsi di dalamnya akan diisytiharkan terlebih dahulu, tetapi tidak dalam fungsi. jshint menghalang definisi pendua.
b hanya akan diisytiharkan apabila fungsi a dilaksanakan, dan jika tiada rujukan luaran yang menunjuk kepada b, ia akan dimusnahkan selepas fungsi itu melaksanakan pusingan kitar semula seterusnya.
Malah tidak banyak bezanya.
Ujian dibuang selepas digunakan, ia tidak akan dikitar semula.
Jika dilaksanakan sekali sahaja, boleh jadi begini:
Fo yang ditakrifkan tidak akan menjejaskan dunia luar, nyahpasangnya serta-merta selepas digunakan dan tunggu untuk dikitar semula
Bersih, menyembunyikan merit dan kemasyhuran