Difference in constructor function definition
<blockquote>
  <p><strong>Possible Duplicate:</strong><br>
  <a href="http://stackoverflow.com/questions/336859/javascript-var-functionname-function-vs-function-functionname">JavaScript: var functionName = function() {} vs function functionName() {}</a>  </p>
</blockquote>



<p>I would like to know if there is some hidden difference between the two following constructor function:</p>

<pre><code>var Person = function(name){
     this.say=function(){
         console.log(name);
     }
}
</code></pre>

<p>and this one:</p>

<pre><code>function Person(name){
         this.say=function(){
             console.log(name);
         }
  }
</code></pre>

<p>suppose we are always going to write:</p>

<pre><code>var x = new Person('xxxxx');
x.say();
</code></pre>

<p>It appear to be the same in order to me, but I'm really green in javascript and I would like to know if some form is wrong and if there is some best practices to follow.</p>
