而且有个一var window = this, // Will speed up references to undefined, and allows munging its name. undefined, // Map over jQuery in case of overwrite _jQuery = window.jQuery, // Map over the $ in case of overwrite _$ = window.$,中间全是,号,相当于分别var 了一次
那么下面为什么不能弹出“aaaa”呢? (function(){ var b=window.a alert(b)//弹出undefined })() var a="aaaa"
var a="aaaa" var c=(function(){ var b=a alert(b)//弹出undefined })();
@4楼 但是jquery也没有在前面定义啊 为什么它可以执行呢??
你执行jquery的时候必须$("#id") 构造吧?这个就已经初始化了
@7楼 jquery变量 也可以引用吧 要不在这给它个引用干嘛?
原来所有函数包含在一个匿名函数里 但是下面还是不行 为什么? 下面弹出undefined (function(){ var b=window.a,a=window.a="aaa"; alert(b)//弹出undefined })();
还是顺序问题,你window.a在后面给了值,你前面怎么能调用到呢(function(){ var a=window.a="aaa",b=window.a; alert(b)//弹出aaa })();
(function(){里面的所有东西都是这个匿名函数的属性
// Will speed up references to undefined, and allows munging its name.
undefined,
// Map over jQuery in case of overwrite
_jQuery = window.jQuery,
// Map over the $ in case of overwrite
_$ = window.$,中间全是,号,相当于分别var 了一次
(function(){
var b=window.a
alert(b)//弹出undefined
})()
var a="aaaa"
var a="aaaa"
var c=(function(){
var b=a
alert(b)//弹出undefined
})();
但是jquery也没有在前面定义啊 为什么它可以执行呢??
jquery变量 也可以引用吧 要不在这给它个引用干嘛?
但是下面还是不行 为什么?
下面弹出undefined
(function(){
var b=window.a,a=window.a="aaa";
alert(b)//弹出undefined
})();
var a=window.a="aaa",b=window.a;
alert(b)//弹出aaa
})();