Вы, видимо, не совсем правильно поняли принцип работы ajax запросов.
Синхронные запросы - зло для производительности, посему в Angular используют механизм, похожий на Promises.
Соответственно, сразу данные не придут и в консоль не будет выведено ничего корректного.
Суть в том, что за запрос уходит определенное время и callback вызывается только по его завершении.
Грубо говоря, внутри callback'а, после проведенных операций, вам нужно вызвать scope.$apply(), чтобы применить изменения модели и уже тогда можете быть уверены, что данные пришли.