求解释!!!! ( var fat = function(x){ return x*x;})();这样写 会提示语法错误把var去掉后,( fat = function(x){ return x*x;})();就不会提示 为什么 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 ( fat = function(x){ return x*x;}) ();红色的这部分可以认为等价于 var fat = function(x){ return x*x;};fat(); 才等价于 ( fat = function(x){ return x*x;}) (); 所以 ( var fat = function(x){ return x*x;})(); 自然不合语法标准。 ( 。) ();这是创建一个匿名函数fat = function(){} fat也只是指这个匿名函数的对象,它仍然是匿名函数。而( var fat = function(x){ return x*x;})(); 中的var fat =function(){}; 则是建立命名函数的标准写法。所以已经不是匿名函数了。自然不能把它用()括起来当作匿名函数写和用。 还不理解表达式的返回~~每个表达式都有返回值的var a = function(){} 返回 undefineda = function(){} 返回 a 基础不花时间 其他东西都是浪费时间 我觉得,(var fat = function(x){ return x*x;})表示执行这个函数,var声明了一个局部变量fat,然后又直接执行,所以找不到这个fat 没有 var ,就是隐式创建了一个全局变量“fat”,这样就不会报错了纯属个人理解.... 怎么用JS实现ASP 的写入cookies? 高分求个自适应布局 如何为htmleditor添加右键事件 谁能帮我看一下,解决IE7下 跨域表单提交问题 刷新父页面 一张图片多个独立的图片 Yahoo深圳第一届WEB前后端F2E,SDE交流大会邀请函 !!!急!!!怎么解决空格!!!!!~~~ 各路好汉帮个忙~ 模式对话框问题! 望高人指点!(急) 动态添加多个iframe实现选项卡功能,类Firefox浏览器的打开多个页面。。。。 求解释!!!!
红色的这部分可以认为等价于 var fat = function(x){ return x*x;};
fat(); 才等价于 ( fat = function(x){ return x*x;}) (); 所以 ( var fat = function(x){ return x*x;})(); 自然不合语法标准。
这是创建一个匿名函数
fat = function(){} fat也只是指这个匿名函数的对象,它仍然是匿名函数。而( var fat = function(x){ return x*x;})();
中的
var fat =function(){};
则是建立命名函数的标准写法。所以已经不是匿名函数了。自然不能把它用()括起来当作匿名函数写和用。
每个表达式都有返回值的
var a = function(){} 返回 undefined
a = function(){} 返回 a 基础不花时间 其他东西都是浪费时间
没有 var ,就是隐式创建了一个全局变量“fat”,这样就不会报错了
纯属个人理解....