Faça angular.forEach esperar a promessa depois de ir para o próximo objeto

Eu tenho uma lista de objetos. Os objetos são passados para uma função adiada. Quero chamar a função com o próximo objeto somente depois que a chamada anterior for resolvida. Existe alguma maneira de fazer isso?

angular.forEach(objects, function (object) {
    // wait for this to resolve and after that move to next object
    doSomething(object);
});

questionAnswers(7)

yourAnswerToTheQuestion