Что означает анонимная функция, переданная в функцию off? - PullRequest
0 голосов
/ 08 июля 2019

Что означает анонимная функция, переданная в функцию off ?

Например, что означает следующее:

$jqueryEl.off("click", function() { console.log("When will it be called?"); });.

Будет ли function() { console.log("When will it be called?"); вызываться после удаления всех прослушивателей щелчков или будет вызываться вместо удаленных прослушивателей щелчков?

Я спрашиваю об этом, поскольку нет четкого ответа на это в документации :

Функция-обработчик, ранее прикрепленная к событию (ям), или специальное значение false.

1 Ответ

2 голосов
/ 08 июля 2019

Что означает анонимная функция, переданная в функцию off?

Ничего полезного.

Поскольку это выражение функции, оно сгенерирует новую функцию. Поэтому он не может был ранее присоединен к событию .

Это также не false.

Кто бы ни написал этот код, он сделал ошибку.


Обычно это происходит, когда кто-то намеревался условно удалить функцию:

const myHandler = function() { console.log("When will it be called?"); };

$jqueryEl.on("click", myHandler);

$somethingElse.on("click", function () {
    $jqueryEl.off("click", myHandler);
});

… но когда они создали две идентичные функции, вместо повторного использования одной и той же функции для двух разных вызовов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...