谁知道这是什么意思?(function(){})(); 看到一些JS类库和框架的定义写成这样的:(function(){ //代码})();谁知道这种语法给解释一下。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 (function(){ //代码})();这是javascript中优雅的方法,定义一个匿名函数:function(){ //代码}然后立即执行(function(){ //代码})();这个在javascript中主要是用来避免命名冲突的问题 (function(){ //这里是块级作用域 })();将函数声明包含在一对圆括号中,表示它实际上是一个函数表达式。紧随其后的另一对圆括号会立即调用这个函数。为什么使用这个匿名函数呢?因为javascript中没有块级作用域,比如:function fun(count){ for(var i=0;i<count;i++){ alert(i); } alert(i);//因为没有块级作用域,所以函数内部可以到处访问它}用块级作用域(通常称为私有作用域)的匿名函数的语法如下:(function(){ //这里是快级作用域})();在这种情况下:function fun(count){ (function(){ for(var i=0;i<count;i++){ alert(i); } })(); alert(i)//导致一个错误} 直接运行那个该函数 相当于function aaa(){ //代码};aaa() (function(){ //代码})();这是个自执行匿名函数,即定义一个其名函数,并马上执行,最后面的()还可以传入参数。这样做主要是为了避免命名冲突 关于innerHTML extjs一个js文件引用另外一个js中的显示内容 js 一个超奇怪的问题 请大家帮我实现这个功能,我先啃饭去了. 高分相送,不够在加!(简单问题!) 遇到难题,大家帮忙啊 请叫一个问题:我想将网页上的文字禁止复制,如何做? 如何用js判断 表单的是否存在某个对象呀 如何在包含frameset的页面禁止f5 ,ctrl+n等功能,在线等待 快逸报表分页表头问题 如何用JS循环改变ClassName
//代码
})();
这是javascript中优雅的方法,定义一个匿名函数:
function(){
//代码
}
然后立即执行
(function(){
//代码
})();
这个在javascript中主要是用来避免命名冲突的问题
//这里是块级作用域
})();
将函数声明包含在一对圆括号中,表示它实际上是一个函数表达式。紧随其后的另一对圆括号会立即调用这个函数。
为什么使用这个匿名函数呢?因为javascript中没有块级作用域,比如:
function fun(count){
for(var i=0;i<count;i++){
alert(i);
}
alert(i);//因为没有块级作用域,所以函数内部可以到处访问它
}
用块级作用域(通常称为私有作用域)的匿名函数的语法如下:
(function(){
//这里是快级作用域
})();
在这种情况下:
function fun(count){
(function(){
for(var i=0;i<count;i++){
alert(i);
}
})();
alert(i)//导致一个错误
}
function aaa(){
//代码
};
aaa()
//代码
})();
这是个自执行匿名函数,即定义一个其名函数,并马上执行,最后面的()还可以传入参数。这样做主要是为了避免命名冲突