Yes, valid point, although if people are researching node list navigation, they are probably beyond the javascript 'beginner' level. Assigning the length of a node list to a variable before loop criteria are evaluated doesn't seem particularly complicated in that context.
With regard to loops generally, it is possible to create unintentional infinite loops if the length is evaluated on each iteration, rather than once only before the loop is run, as in the scenario suggested by justsomeguy.