.constructorはい、コンストラクター関数のprototypeオブジェクトのプロパティを手動で上書きできます。
constructorプロパティが変更されたようです。function Array() { [native code] }通常、おそらく の代わりに のようなものが表示され[ undefined ]ます。
確認するためにできることの1つは...
console.log(typeof [].constructor);
それはあなたに与えるはずです"function"。が表示される場合は"object"、変更されています。
コンソール出力を信用しない
Firebugでテストしているようです。
原則として、コンソール ロギングを信頼しすぎないようにしてください。コンソールは環境へのアドオンであり、ログに記録するために与えられたものを解釈する必要があります。時々解釈が誤解を招きます。
奇妙な結果が得られた場合は、他のテストを実行してください...
console.log(Array); // [ undefined ] ...huh???
console.log([].constructor); // [ undefined ] ...huh???
typeof [].constructor; // Firebug still gives "function"
[].constructor === Array; // Firebug returns true
Arrayしたがって、Firebug が関数自体の奇妙な解釈を行ったとしても、それがまだ期待されるコンストラクターであるという事実は変わらないことがわかります。