Все,
Я довольно новичок в разработке JavaScript, так что это, вероятно, очень глупый вопрос.
Но я читаю Apple Safari Developer Library и замечаю, чтоони используют «анонимные функции» при подключении к EventListener:
this.element.addEventListener('touchstart', function(e) { return self.onTouchStart(e) }, false);
Это отличается от этого:
this.element.addEventListener('touchstart', onTouchStart, false);
Предполагается, что это другое, как?Если это не так, почему они используют этот метод?
Вот ссылка на документ, на который я ссылаюсь:
Руководство разработчика Safari - Интерактивные визуальные эффекты
Некоторые пояснения ...
Я бы понял пользу этого:
this.element.addEventListener('touchstart', function(e) { alert("touched")}, false);
За это ...
this.element.addEventListener('touchstart', onTouchStart, false);
function onTouchStart(e) {
alert("touched");
}
В этом случае,вы сохранили, создав «постоянную» именованную функцию.
Но, в случае Apple, функция с именем «onTouchStart» в любом случае является постоянной именованной функцией.Итак, есть ли еще выгода?
Заранее спасибо!