Nonostante tutti i blog noti su questo problema, dubito sempre di alcuni risultati e i miei test personali mostrano che lo standard ben detto non è il migliore.Dichiarazione dichiarazione dichiarazione su loop in Actionscript 3
Dichiarazione variabile all'interno del ciclo, per tenerli vicino alla sua portata e renderlo più veloce da raggiungere con il metodo ma ripartendo più memoria o dichiarare fuori del per portata salvare allocazione di memoria ma aumentare elaborazione per iterare in un caso lontano.
I miei risultati mostrano che il metodo B è più veloce (a volte), voglio conoscere lo sfondo attorno a questo.
i risultati variano e non sono un guru del bit-brusher.
Allora, cosa ne pensate voi ragazzi?
Metodo A
var object:Object = new Object();
var loop:int = 100000
for (var i:int = 0; i < loop; i++)
{
object = new Object();
object.foo = foo;
object.bar = bar;
}
O
Metodo B
var loop:int = 100000
for (var i:int = 0; i < loop; i++)
{
var object:Object = new Object()
object.foo = foo;
object.bar = bar;
}
Sarebbe interessante vedere i test * effettivi * eseguiti per vedere se sono validi, ripetibili e mostrano cosa viene affermato. È difficile ottenere dei benchmark corretti (e solo i frammenti di cui sopra non sono adeguati). Esiste * qualche *, anche se in genere non pertinente, argomento per dichiarare le variabili all'interno degli ambiti nidificati (ad esempio * funzioni nidificate *) e assegnare loro un valore per evitare la ricerca nella catena [[scope]], ma questo è * diverso * caso che richiede un nuovo [[ambito]] da osservare. –
Il metodo B è più veloce perché contiene meno novità. È la nuova affermazione che sta prendendo il tempo qui. –