Out of curiosity, is there a reason for this?

Coming from C++-land where we have the luxury of being able to do declarations-and-initialisations inside loops, I always try to avoid the situation where we have uninitialised variables and always try to initialise variables at declaration time. That would usually mean that we can skip the in-loop initialisation.

Of course, if the argument is purely that the way I'm doing it now is less readable then I'd be happy to buy that - it isn't usually the way I'd see it done.