title: Return multiple values, including a promise
body: <pre><code>...
  var me = 'you';
  return aPromise();
  }).then(data =&gt; {
    // i want me here
  })
  
  function aPromise() {
    return new q.Promise((resolve, reject) =&gt; {
        resolve(iReturnAnObject());
      }, reject);
  });
  </code></pre>
  
  <p>I want the <code>me</code> variable inside the scope of the <code>then</code> method. If I try something like:</p>
  
  <pre><code>...
  var me = 'you';
  return [aPromise(), me];
  }).then(data =&gt; {
    let promise, me;
    [promise, me] = data;
    console.log(promise); //incomplete object
  })
  </code></pre>
  
  <p>The <code>promise</code> variable won't contain the entire object aPromise() should return, it's still pending.</p>