−112
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
private function getListenerIndex(func:Function):Number
{
var num:Number = -1;
for(var i:int = 0; i < mouseWheelListeners.length; i++)
{
if(func == mouseWheelListeners[i])
{
num = i;
break;
}
}
return num;
}
public function addMouseWheelListener(subscriberFunc:Function):void
{
if(getListenerIndex(subscriberFunc) == -1)
mouseWheelListeners.push(subscriberFunc);
}
Отдельного внимания заслуживает тот факт, что человек решил, что индексов в массиве не будет больше чем максимальное цело 32-битное знаковое, и не меньше чем минимальное, а вернул все равно Number. (Для не разбирающихся в AS3 есть Array.indexOf(), метод который делает то, что делает getListenerIndex() в данном примере, только быстрее, и называется по-человечески. Но автор считает, что мануал написан для идиотов...)
Запостил: wvxvw,
17 Мая 2011
guest8 09.04.2019 10:47 # −999