Как сказать-то... Из серии, "а слона-то я и не заметил"
Тут же функция bar лежит в корне функции foo, а вызывается не из корня, а из блока for, вот bar ищет сначала внутри себя, затем в корне функции foo(в цикл for не заходит (а в случае var переменная поднялась бы в корень функции foo) ), а затем идёт в глобальную зону видимости. Ну а далее как я описал в предыдущем сообщении.
Сорри.