The documentdan windowyang objek yang berbeda dan mereka memiliki beberapa acara yang berbeda. Menggunakan addEventListener()mereka mendengarkan acara yang ditujukan untuk objek yang berbeda. Anda harus menggunakan salah satu yang benar-benar memiliki acara yang Anda minati.
Misalnya, ada "resize"acara di windowobjek yang tidak ada di documentobjek.
Misalnya, "DOMContentLoaded"acara hanya pada documentobjek.
Jadi pada dasarnya, Anda perlu tahu objek mana yang menerima peristiwa yang Anda minati dan gunakan .addEventListener()pada objek tertentu.
Berikut adalah bagan menarik yang menunjukkan jenis objek yang membuat jenis peristiwa mana: https://developer.mozilla.org/en-US/docs/DOM/DOM_event_reference
Jika Anda mendengarkan acara yang disebarkan (seperti acara klik), maka Anda dapat mendengarkan acara itu di objek dokumen atau objek jendela. Satu-satunya perbedaan utama untuk acara yang diperbanyak adalah dalam hal waktu. Acara akan mengenai documentobjek sebelum windowobjek karena terjadi pertama kali dalam hierarki, tetapi perbedaan itu biasanya tidak penting sehingga Anda dapat memilih salah satunya. Saya merasa umumnya lebih baik untuk memilih objek terdekat ke sumber acara yang memenuhi kebutuhan Anda saat menangani acara yang diperbanyak. Itu akan menunjukkan bahwa Anda memilih documentlebih windowketika salah akan bekerja. Tetapi, saya sering berpindah lebih dekat ke sumber dan menggunakan document.bodyatau bahkan beberapa orang tua yang lebih dekat dalam dokumen (jika mungkin).