Relationship of Function object and Javascript object
<p>Recently I read a <a href="http://kevinoncode.blogspot.com/2011/04/understanding-javascript-inheritance.html" rel="nofollow">tutorial</a> which says if define the function like below.</p>

<pre><code>function Animal() { }
</code></pre>

<blockquote>
  <p>On the surface, this code seems to create a function called Animal.
  But with JavaScript, the full truth is slightly more complicated. What
  actually happens when this code executes is that two objects are
  created. The first object, called Animal, is the constructor function
  itself. The second object, called Animal.prototype, has a property
  called Animal.prototype.constructor, which points to Animal. Animal
  has a property which points back to its prototype, Animal.prototype.</p>
</blockquote>

<p>But I have little confuse about it .What about the <code>Function</code> object ?What is the use for the <code>Animal</code> object? </p>

<p>And If I write code like below .</p>

<pre><code>var test= new Function();
</code></pre>

<p>and I inspected the variable <code>test</code> in the Developer tool of the Chrome.
I found <code>test</code> is nothing to do with the <code>Function</code>. Can someone tell me why ? thanks.</p>

<p><img src="http://i.stack.imgur.com/cPVbN.png" alt="enter image description here"></p>

<p><strong>Updated</strong></p>

<p>The diagram below is the objects relationship when the code is executed, please review it.
If my understanding is wrong. please correct me. thanks.</p>

<p><img src="http://i.stack.imgur.com/kKmqP.png" alt="If my understanding is wrong. please correct me. thanks."></p>
