Итак, общее соглашение для функций обратного вызова в Node.js состоит в том, чтобы «зарезервировать» первый параметр для ошибки (если существует). Например:
callSomeBlockingFcn( function callbackWhenDone(err, result) {
if( err ) ...
});
Если вам нужно вернуть более одной ошибки - например, несколько ошибок проверки данных - считается ли передача массива объектов ошибок плохой формой? Пример:
var callSomeBlockingFcn = function(callback) {
// multiple errors to report back...
callback( [ err1, err2, ...] );
}
Или предпочтительнее избегать массивов и возвращать единственный объект со свойством, ссылающимся на массив (при необходимости)? Пример:
var callSomeBlockingFcn = function(callback) {
// multiple errors to report back...
callback( { errors: [ err1, err2, ...] } );
}