Ребята, не в асинхронности дело, а в том что return срабатывает для $.post метода ( спасибо тебе tratotui), а не для getStreets(city), так как он находиться внутри метода.
Я поборол эту проблему следующим путем: перед $.post методом создал массив пустой, после неасинхронного запроса возвращаю массив внутри функции getStreets. Собственно всё. Очень благодарен за помощь!