有人可以解释为把所有的变量与应用范围与窗口范围的原因的应用范围?应用范围总是更好吗?窗口与Javascript的变量
- 表现?
- 防止命名collisons?
- 其他原因?
窗口范围
var myFunction1=function(){
//do something
};
var myFunction2=function(){
//do something else
};
var myObject1={
//store stuff
};
var myDOMElement1=$('.myDOMElement1');
应用范围
var myApplication={
'myFunction1':function(){
//do something
},
'myFunction2':function(){
//do something else
},
'myObject1':{
//store stuff
},
'myDOMElement1':$('.myDOMElement1')
};
这不是“应用程序”范围。这只是命名空间的对象。香草JS没有“应用”范围。 – 2013-05-08 21:06:11
不应该有任何主要的性能差异,但不定义窗口上的东西会使你的代码更容易出错,由于不相关或写得不好的代码。 – 2013-05-08 21:09:13
@KevinB所以你说它主要是关于最小化人为错误,而不是更高性能? – 2013-05-08 21:10:53