событие, помещенное внутри параметра функции

#javascript #addeventlistener

#javascript #addeventlistener

Вопрос:

Я сейчас изучаю javascript и просматриваю события. Одна вещь, которая поставила меня в тупик, заключается в том, почему «событие» помещается в качестве параметра внутри функции. Чтобы быть более конкретным, я приложил пример кода. Ссылается ли «событие» в этом разделе на прослушиватель событий «click», и если да, то какова цель или как они связаны друг с другом?

Я все еще немного новичок, поэтому было бы здорово довольно простое объяснение

submitEl.addEventListener("click", function(event) { console.log(event); }

Комментарии:

1. Это фактический экземпляр события. 'click' не является событием. Это просто строка, которая сообщает addEventListener , для каких событий обрабатывать.

2. @Taplar понял. Таким образом, без добавления события в качестве параметра функция не знает, что ссылаться на фактическое событие, а строка «click» сообщает слушателю, какое событие конкретно прослушивать?

3. В этом суть.

Ответ №1:

addEventListener — это просто метод / функция, которая принимает два параметра, строку и функцию.

например:

 function addEventListener(eventIndicator /*string eg 'click' etc*/, callbackFunction) {
    switch(eventIndicator) {
        case 'click':
            callbackFunction(/* event object */) // addEventListener calls the function you provide as an argument and passes an event object to the function
            break
        // etc...
    }
}
  

Редактировать:
P.S это всего лишь простое объяснение того, как работают функции обратного вызова и откуда event они берутся.