(function(){
var window =this,wt=window.wt='a';
})();
alert(wt)
//--------------------------------正确de(function(){
var window =this,window.wt='a';
})();
alert(wt);
//--------------------------------错误de
var window =this,wt=window.wt='a';
})();
alert(wt)
//--------------------------------正确de(function(){
var window =this,window.wt='a';
})();
alert(wt);
//--------------------------------错误de
(function(){
var window =this;
window.wt='a';
})();
alert(wt);
这是在定义变量吧window.wt没这样的变量
变量中不能有点,或者说,不能直接定义“子变量”
这个可以是因为,变量只有wt,其后的都是赋值,当然没问题
var window =this;window.wt='a';便可正常运行window.wt 是不符合变量声明的:
第一个字符必须是一个 ASCII 字母(大小写均可),或一个下划线(_)。注意第一个字符不能是数字。
后续的字符必须是字母、数字或下划线。
变量名称一定不能是 保留字。第一段代码是因为wt是一个合法的变量声明“,wt=window.wt='a'; ” 是一个连续赋值语句,window.wt是在程序运行期间才被赋值的
加“,” 表示声明两个变量 一个是window 一个是wt 如:var a=0,b=1,c=2;
window.wt='a'就成了 window的属性 wt赋值a 这个时候就不是声明了 而是一个句子 前面的“,”就要去掉 换成“;”言辞不专业 大体就是这样了 等专业人士