hola gente les queria consultar si a alguien se le ocurre una solucion o se encontro alguna ves con un problema parecido
lo que pasa es esto

Código Javascript :

         var self = this;
         var velocidad = 1000/this.fps;
         for(var f in lista)
         {                     
            setTimeout(function () {self.mf(f);}, (f * velocidad));
         }

el problema es el siguiente a la hora de evaluar el primer setTimeout y ejecutar el self.mf(f), f tiene el valor del ultimo elemento de lista por como el primer setTimeout se ejecuta despues de que termino el bucle for todas las instacias tienen el mismo elemento de la lista
bueno espero haberme explicado bien
desde ya gracias