本地JavaScript构造函数/函数像Function
,Object
,Array
是否总能在任何范围内使用?它们是由全局对象或类似的甚至更高级别的东西继承的?本机JavaScript的功能是否像“superglobals”一样?
作为一个例子,MooTools的包含在其自身执行的函数以下行:
var Function = this.Function;
于是我问自己,有没有在那里这些本地构造变得不可用任何情况呢?也许在服务器端或严格的JS?或者它只是一个性能问题缓存本地参考?但是,如果是这样,为什么不这样做是这样:
var Function = Function;
本地构造函数是全局对象(全局对象的属性),所以是的,它们始终可用。 – 2012-04-15 13:50:49
@ŠimeVidas,这不是永恒的真实。我可以轻易覆盖它们,例如'Function = 6;'之后有一些棘手的方法来引用它们,但是全局引用肯定会以这种方式丢失。 – davin 2012-04-15 13:52:24