title: Using forEach to push new values into an object and returning async
body: <p>I'm trying to add new values into an array of objects and then returning the entire object, with the new values, to the client. </p>
  
  <p>I've already tried using async/await and promises, though possibly doing that wrong. I did also read that forEach isn't async await so I tried using map too but that didn't work for me.</p>
  
  <pre><code> // results
      const userPromise = new Promise((resolve, reject) =&gt; {
          results.forEach((pyUser) =&gt; {
              console.log(pyUser);
              // For each user attempt to look up associated data
              User.findOne({ _id: pyUser.id }, (err, user) =&gt; {
                  if (user){
                      pyUser.address= 'Test address';
                  }
              });
          });
          resolve();
      }).then(
          console.log(results)
      // Send results
      res.send(results)
      ).catch(
          console.log('Ooooops...')
      )
  </code></pre>
  
  <p>I'm hoping that results that are being sent back will include the new address property.</p>