Не избыточно ли объявлять тип данных объекта события в параметрах функции слушателя? - PullRequest
0 голосов
/ 03 октября 2011

При нажатии на кнопку что-то происходит.Однако мне кажется избыточным, что в объявлении myListenerFunction объект события e класса MouseEvent фактически должен иметь свой тип данных MouseEvent .1007 *

mybutton.addEventListener(MouseEvent.CLICK, myListenerFunction);

function myListenerFunction(e:MouseEvent):void
{
     // function body
}

Не могу ли я обойтись без этого (.swf работает так же, насколько я знаю ...)?

 function myListenerFunction(e):void

Так как тип данных e всегда должен соответствовать классу события MouseEvent.CLICK (что является MouseEvent )?

EDIT:

Итак, скажем, мы идем от мышисобытие к событию клавиатуры.Не объявляя тип данных e, мы не можем быть склонны к ошибкам, не меняя тип данных e.По умолчанию будет иметь тип KeyboardEvent

mybutton.addEventListener(KeyboardEvent.KEY_DOWN, myListenerFunction);

function myListenerFunction(e):void
{
     // function body
}

1 Ответ

1 голос
/ 03 октября 2011

Вы можете сохранить тип события для базового класса Event, если хотите.Но у вас не будет доступа ни к одному из MouseEvent / KeyboardEvent -конкретных членов, когда вы сделаете это таким образом.Вы можете попытаться получить доступ к любому члену по имени (даже если он не существует) - это медленнее (много) и довольно подвержено ошибкам.Вы не получите проверку времени компиляции, например.

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