首页 > 代码库 > Javascript 函数表达式
Javascript 函数表达式
第一部分,关键词 function
第二部分,函数名,但是可有可无。
第三部分,包含在括号内的参数,当然参数也是可有可无的,括号不能少。
第四部分,是一组包裹在大括号的语句块,也就是函数要执行的具体代码,可以为空。
第二部分,函数名,但是可有可无。
第三部分,包含在括号内的参数,当然参数也是可有可无的,括号不能少。
第四部分,是一组包裹在大括号的语句块,也就是函数要执行的具体代码,可以为空。
例如
function () {}
这个写法符合上面4条规则,但却不是表达式,运行会报语法错误。
只有当作表达式的时候才能正常执行。
1. (function () {}); 2. var a = function () {}; 3. var obj = {fn: function () {}};
再来看个
var fn = function test() {};
这个也是函数字面量,test 是这个函数的名字,但是只对函数体内可见,外部是不可调用的。
var fn = function test() { console.log(test); };console.log(fn); // function test() { console.log(test); };fn(); // function test() { console.log(test); };console.log(test); // 报 test 未定义
这里的函数名可用于内部使用,比如递归调用的时候,会很方便。
为什么不用 arguments.callee 呢。很多地方都可以看到说 arguments 是把双刃剑,是性能杀手,能避免就尽量避免使用。
加一个函数名,调用方便,性能极致,对项目压缩也有好处,何乐而不为呢?
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。