Event в function()?

Для чего и вообще именно когда нужно писать event в function() в JavaScript?

function( e ); <-- e в скобках?

И почему в некоторых случаях без него нельзя?
  • Вопрос задан
  • 1402 просмотра
Решения вопроса 3
DevMan
@DevMan
когда в функции нужен ивент.
например, для отмены дефолтного события или определении какое/где событие было вызвано.
Ответ написан
Комментировать
@camelCaseVlad
https://developer.mozilla.org/ru/docs/Learn/JavaSc... - смело отмечайте данный ответ, лучше информации не найдете :).
Ответ написан
@vladdimir
Верстальщик
Подписываясь на событие, вы вешаете коллбэк. Когда событие срабатывает, в коллбэк передается объект Event с информацией о этом событии. И ev нужен для того, чтобы получить доступ к этому объекту. Его можно назвать и просто e или evt или handmaidsNotes - как хочется, но лучше все таки называть, как принятно, чтобы другим, и вам через пару месяцев, было очевидно, что происходит)

document.addEventListener('click', doSomething)
// вывести в консоль все аргументы, переданные в функцию
function doSomething () { console.log(arguments) }

document.addEventListener('click', doSomethingElse)
// называем event по другому, чтобы всех запутать
function doSomethingElse (handmaidsNotes ) { console.log(handmaidsNotes ) }


Если переменную никак не назвать, то в функции к ней доступа не будет (вру, будет через объект всех аргументов функции - но так делать очень плохо и непонятно зачем вообще) и соответственно обратиться вы к нему не сможете.

Если вашей функции-обработчику не нужно работать с информацией и методами объекта event, то можно аргумент не задавать. Если вам нужно что-то узнать (event.target, mouseCoords) или сделать (event.preventDefault() ) с event, то вы его подписываете в коллбэке, чтобы было очевидно к чему вы обращаетесь.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы