I make it a point never to use a for loop in JS. It's sometimes tricky but often leads to cleaner code.
There's no rule that says a for loop must only support a single iteration interface. That seems more like an implementation detail of the compiler than a problem with for loops in general.