title: Property defined in scope object but not accessible
body: <p>Why am I able to see a property inside my scope printed with <code>console.log()</code>, but directly afterwards when I try to access it it's undefined?</p>
  
  <p>The following code is inside a directive's controller function:</p>
  
  <p></p>
  
  <pre><code>console.log($scope); //a scope object with a defined "output" property
  console.log($scope.output); //undefined
  </code></pre>
  
  <p>Here is the output of my scope from the first <code>console.log()</code>.</p>
  
  <pre><code>Scope {$id: "008", $$childTail: null, $$childHead: null, $$prevSibling: Scope, $$nextSibling: Scope…}
  ...
  output: "3"
  ...
  </code></pre>
  
  <p>I know there is <a href="https://stackoverflow.com/q/17978702/983992">another question asking for pretty much the same</a> but the OP is using an isolate scope with <code>@</code> for an attribute whereas I'm using <code>=</code> which won't work with <code>observe</code> as much as I know.</p>
  
  <p>And then there is something else I'm a little bit confused about. Why is that even possible, isn't a <code>console.log()</code> a "snapshot" of whats given as a parameter? So how is it possible that I see a property in line 1 and in line 2 it's undefined?</p>