title: Projecting a field that doesn't always exist
body: <p>Is there a way to project fields that may or may not exist? Such as having it defined as <code>null</code> or undefined?</p>
  <p>For instance, I have a query with:</p>
  <pre><code>$project: {
    date: 1,
    name: &quot;$person.name&quot;,
    age: &quot;$person.age&quot;
  }              
  </code></pre>
  <p>Not all documents are guaranteed to have a <code>$person.age</code>, but instead of the ones without an age being returned as <code>{ date: Today, name: &quot;Bill&quot; }</code>, I would like it to say <code>{ date: Today, name: &quot;Bill&quot;, age: null }</code> or something similar.</p>
  <p>Is there a better way than just iterating through the data afterwards and creating the fields if they don't exist?</p>