Скорее всего этот массив роутов получается с сервера и именно в тот момент когда срабатывает console.log($scope.$parent.routes) он еще не имеет значения. В первом же случае к моменту как вы просматриваете объект выведенный в консоль он успевает загрузиться.
Но опять же это только предположение. Общую картину можно оценить взглянув на весь код а не на конкретный отрывок.