setTimeout callback argument
<pre><code>function Person(name) {
this.name = name;
}

Person.prototype.showName = function() {
alert(this.name);
}


var mike = new Person("mike");
//mike.showName();  

window.name = "window"; 
</code></pre>

<p>I don't understand the difference between the performance of </p>

<pre><code>setTimeout(mike.showName(), 5000);
</code></pre>

<p>and</p>

<pre><code>setTimeout(function(){
    mike.showName();
}, 5000);
</code></pre>

<p>Could someone explain it a little bit? It really confuses me. Thanks.</p>
