title: Node.js convention for returning multiple errors via callback?
body: <p>So the <a href="http://nodeguide.com/style.html#callbacks" rel="noreferrer">general convention</a> for callback functions in Node.js is to "reserve" the first parameter for an error (if one exists). For example:</p>
  
  <pre><code>callSomeBlockingFcn( function callbackWhenDone(err, result) {
    if( err ) ...
  });
  </code></pre>
  
  <p>If you need to return more than one error--say multiple data validation errors, for example--is it considered poor form to pass an array of error objects? Example:</p>
  
  <pre><code>var callSomeBlockingFcn = function(callback) {
    // multiple errors to report back...
    callback( [ err1, err2, ...] );
  }
  </code></pre>
  
  <p>Or is it preferable to avoid arrays and return a single object with a property referencing an array (if necessary)? Example:</p>
  
  <pre><code>var callSomeBlockingFcn = function(callback) {
    // multiple errors to report back...
    callback( { errors: [ err1, err2, ...] } );
  }
  </code></pre>