¿Por qué los cierres en línea se usan tan poco en Actionscript? Son muy poderosos y creo que son bastante legibles. Casi nunca veo a nadie usándolos así que tal vez estoy buscando el código equivocado. Google los usa en su API de Google Maps para muestras de Flash, pero creo que ese es el único lugar donde los he visto.Uso de cierres en línea/delegados de función en Actionscript
Los prefiero porque tienes acceso a las variables locales en el ámbito que los define y mantienes la lógica en un método y no terminas con muchas funciones para las cuales tienes que encontrar un nombre.
¿Hay alguna trampa de utilizarlos? Funcionan más o menos de la misma manera que en C#.
De hecho, acabo de descubrir que AS3 los admite, y estoy bastante molesto porque pensé que había leído que estaban obsoletos en AS #. ¡Así que estoy de vuelta a usarlos!
private function showPanel(index:int):void {
_timer = new Timer(1000, 1);
_timer.addEventListener(TimerEvent.TIMER, function(event:Event):void
{
// show the next panel
showPanel(index++);
});