Function
、Object
、Array
などのネイティブJavaScriptコンストラクタ/ファンクションは、常にどのスコープでも利用できますか?彼らは、グローバルオブジェクトや同じレベルまたはそれ以上のもののようなものによって継承されていますか?一例として、ネイティブJavaScript関数は「スーパーグローバル」なのでしょうか?
、MooToolsのは自己実行機能に次の行が含まれています
var Function = this.Function;
だから私は、これらのネイティブのコンストラクタが使用不能になったどのような状況が存在し、自分自身に尋ねましたか?おそらくサーバー側または厳格なJSですか?または、ローカル参照をキャッシュするのは単なるパフォーマンス上の質問ですか?しかしもしそうなら、このようにしてはどうでしょうか。
ネイティブコンストラクタはグローバルオブジェクト(グローバルオブジェクトのプロパティ)です。したがって、常に利用できます。 –
@ imeVidas、それは永遠に真実ではありません。私はそれらを簡単に上書きすることができます。 'Function = 6;'後でそれらを参照する手間がかかりますが、グローバル参照は確実にこの方法で失われる可能性があります。 – davin