Reference type and GetValue()
<p>Why if we run the following javascript code:</p>

<pre><code>        var foo = {
           bar: function () {
               alert('s');
           }
       }

      //1. foo.bar();
      //2. var a = foo.bar;
      //3. var b = (foo.bar);          
       (foo.bar)();
</code></pre>

<p>we'll get an error message "foo is undefined", but if we uncomment 1. or 2. or 3. line we'll get alert 's'? I know that it's about Reference type and GetValue(), but I don't really understand the point.</p>

<p>Thanks</p>
