函数的声明方法
在JavaScript中函数一共有三种声明方法。
function()命令)(声明一个具名函数
)
1 | function 函数名(e){ |
其中function命令声明的代码区块,就是一个函数。function后的就是函数名,如果一个函数没有函数名就是匿名函数。函数名之后就是一对括号,用来传递函数的参数.函数体放在大括号里面。这种声明方式,函数名必须要写,如果不写的话无法调用。
函数表达式(变量赋值)
1 | function (){} // 直接声明匿名函数会报错 |
注:该表达式右侧function不带有函数名。如果加上函数名,该函数名只在函数体内部有效,在函数体外部有效。
1 | var Fn = function i(){ |
或者直接把函数名变为变量名
1 | var i = function i (){} ; |
需要注意的是,函数的表达式需要在语句的结尾加上分号,表示语句结束。
Function构造函数
1 | Function('p1','p2','functionBody') |
这种写起来很麻烦 而且一般很少人用。
函数一般在函数体内不写return的话浏览器会自动补全,
1 | function s(){} |
所以一般typeof没有返回值的函数的值都是undefined。
另外补充两种方法
匿名函数的声明
1 | var x |
箭头函数的声明
1 | var a |
箭头函数都是匿名的
函数表达式和function()
命令有一些区别需要提一下
1 | function y(){} |
__END__