Как мне обрабатывать ошибки с обещаниями?

Как программист узла. Я привык использовать "nodebacks" для обработки ошибок в моем коде:

myFn(param, function(err, data) {
    if (err){
        //error handling logic
     }
     else {
        // business logic
    }
});

При написании этой функции я могу сделать что-то вроде:

var myFn = function(param, callback){
    var calc = doSomeCalculation(param);
    if(calc === null) { // or some other way to detect error
        callback(new Error("error with calculation"), null);
    }
    ...
    someAsyncOp(calcN,function(err, finalResult){
        if(err) return callback(err, null);
        callback(null, finalResult); // the error is null to signal no error
    });

};

Как бы я сделал такого рода обработки ошибок с обещаниями?

Ответы на вопрос(1)

Ваш ответ на вопрос