ГлавноеАудиоКомиксыДетям
Аня З.
Аня З.цитирует2 недели назад
Плохое решение Так делать не нужно. Мы не хотим создавать слушателя событий для каждой из кнопок: let oneElement = document.querySelector("#one"); let twoElement = document.querySelector("#two"); let threeElement = document.querySelector("#three"); let fourElement = document.querySelector("#four"); let fiveElement = document.querySelector("#five"); oneElement.addEventListener("click", doSomething, false); twoElement.addEventListener("click", doSomething, false); threeElement.addEventListener("click", doSomething, false); fourElement.addEventListener("click", doSomething, false); fiveElement.addEventListener("click", doSomething, false); function doSomething(e) { let clickedItem = e.target.id; console.log("Hello " + clickedItem); } Очевидная причина так не делать — в нежелании повторять код. Другая причина состоит в том, что для каждого элемента теперь установлено свойство addEventListener. В случае с пятью элементами это не так страшно. Однако все становится куда серьезнее, когда вы работаете с десятками или сотнями элементов, каждый из которых задействует частичку памяти. Еще одна причина в том, что число элементов может варьировать в зависимости от степени адаптивности или динамичности UI. Ваше приложение может добавлять или удалять элементы в зависимости от действий пользователя, что затруднит отслеживание всех индивидуальных слушателей событий, которые могут потребоваться объекту. Наличие же одного всеобщего обработчика событий существенно упрощает весь этот процесс.
JavaScript с нуля
JavaScript с нуля
·
Кирупа Чиннатхамби
JavaScript с нуля
Кирупа Чиннатхамбии др.
6.8K

Войти или зарегистрироваться чтобы комментировать