javascript 两个括号

//这里只是相当于进行了匿名函数的定义,后面的括号不能进行调用

//所以这样的调用方式有问题,即存在脚本错误,影响后续脚本的执行

//function(){

//var a = "can not execute";

//alert(a);

//}();

 

//如下便可执行

(function(){

var a = "here is a test";

alert(a);

})();

说明:自执行匿名函数,可以减少变量冲突和全局变量的污染。

对于代码片段:

function(){

var a = "here is a test";

alert(a);

}

只是定义了一个函数,因为没有函数名,无法正常获得该对象,但是因为确实存在这样一个对象A。这时一种特殊的方式可以获得该对象:(A),获得之后就可以调用了。就好比正常定义时函数名为B,调用时语句如:B();那么这里最终也是这样调用:(A)();

所以

(function(){

var a = "here is a test";

alert(a);

})();可以执行

 

如果需要参数,则有:

(function(para){

var a = "here is a test";

alert(a);

alert(para);

})("zengst");

你可能感兴趣的:(JavaScript)