匿名函数括号问题 (function (a){return function(){alert(a)}})(1)将以上代码写成:function (a){return function(){alert(a)}}(1)是不正确的但是function c(a,fn){fn()}c(1,function (a){return function(){alert(a)}}(1));作为参数的那个匿名函数外面的括号加不加都能正常运行,这是为什么呢?? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 (function (a){return function(){alert(a)}})(1)a=function (a){return function(){alert(a)}}(1);function c(a,fn){fn()}c(1,a); (function (a){return function(){alert(a)}})(1)这样写是表示定义一个匿名函数并且传入参数1,立即执行。。 ()在js中是强制表达式运算(function (a){return function(){alert(a)}})(1)不用()括着的话,引擎不知道你要强制运算他其他它等同于(function (a){return function(){alert(a)}}(1))所以就可以理解function c(a,fn){fn()}c(1,function (a){return function(){alert(a)}}(1));为什么是正确了 c(1,function (a){return function(){alert(a)}}(1));里面的function (a){return function(){alert(a)}}(1)不是也需要执行而返回function(){alert(a)}吗? 你的意思是function c(a,fn){fn()}c(1,function (a){return function(){alert(a)}}(1));为什么能执行alert(a)? function c(a,fn){fn()}c(1,function (a){return function(){alert(a)}}(1));我们一步一步看function (a){return function(){alert(a)}}(1)等同于function(){alert(1)}所以c(1,function (a){return function(){alert(a)}}(1)); ==c(1,function (){alert(1)});再看c函数function c(a,fn){fn()} 它方法体里把fn执行了fn();所以就等于把function (){alert(1)}执行了,不就会alert(1)了? 求个正则 一个js打开windows窗口问题,高手请进。 有关opener的问题,请达人指点下! JS中tb.insertRow()在谷歌中的问题 如何用JS取得DataGrid的行数和所有行的某一列的内容? 如果在父框架里得到子框架的标题?或者在子框架里设置父框架的标题? ext4中的view显示图片,如何做到横向显示? 数据类型转换 asp为什么使用javascript会发生问题? 求助贴:如何利用Jquery根据)$('.class').text()改变text内容 javascript怎么自学 ASP.NET中前台 js远程获取json数据返回值问题。
return function(){alert(a)}
})(1)
a=function (a){
return function(){alert(a)}
}(1);
function c(a,fn){fn()}
c(1,a);
return function(){alert(a)}
})(1)这样写是表示定义一个匿名函数并且传入参数1,立即执行。。
return function(){alert(a)}
})(1)
不用()括着的话,引擎不知道你要强制运算他
其他它等同于
(function (a){
return function(){alert(a)}
}(1))所以就可以理解function c(a,fn){fn()}
c(1,function (a){
return function(){alert(a)}
}(1));
为什么是正确了
return function(){alert(a)}
}(1));
里面的
function (a){
return function(){alert(a)}
}(1)
不是也需要执行而返回function(){alert(a)}吗?
你的意思是
function c(a,fn){fn()}
c(1,function (a){
return function(){alert(a)}
}(1));
为什么能执行alert(a)?
c(1,function (a){
return function(){alert(a)}
}(1));我们一步一步看function (a){
return function(){alert(a)}
}(1)
等同于function(){alert(1)}所以
c(1,function (a){
return function(){alert(a)}
}(1)); ==
c(1,function (){
alert(1)
});
再看c函数
function c(a,fn){fn()}
它方法体里把fn执行了fn();
所以就等于把function (){
alert(1)
}执行了,不就会alert(1)了?