js 闭包

<script type="text/javascript"> 
var q = function(){     
    return 'q'; 
} 
alert(q)  
var s = function(){ 
    return 's'; 
}();   
alert(s) 
var t = (function(){ 
    return 't'; 
}()); 
alert(t)
var z = (function(){
   return 'z';
})();
alert(z);
</script>

js难点重点之一闭包:(function(n){})(i)

都一样,申明匿名函数后执行

var s = (function(){
alert(1111);
}());
你这个应该意思是
var s = (function(){
alert(1111);
})();

都一样,申明匿名函数后执行

var s = (function(){
alert(1111);
}());
你这个应该意思是
var s = (function(){
alert(1111);
})();
,传说中的自执行函数

记住

()
是运算符

(表达式)则表达式的结果将会返回

(function(){...})这样就返回了一个函数

但是 当 ()和函数连接在一起的时候 则表示 函数运算

(function(){...})()  一前一后2个括号 就是调用里面的函数让他执行

定义好了JS匿名函数后,立即执行

一般最好的写法是:
(function(){
alert(1111);
})();

原文地址:https://www.cnblogs.com/wangluochong/p/3600225.html