Why can't I call array.0 in Javascript?
<p>This code will alert all the properties names in the object a. 0,1,2 and hello.</p>

<pre><code>Object.prototype.hello = {};

var a = [1,2,3];

for ( var number in a ) {
    alert( number)
}
</code></pre>

<p>My question is, I can access the property hello by this syntax:</p>

<pre><code>a.hello
</code></pre>

<p>But why can't I access <code>a.0</code> which should be equal to 1. Isn't the array decleration creating "real properties"?</p>

<p>I know that I can access the properties by a[0] and a["hello"]</p>
