重要案例:
计算5的阶乘。 if(num==1)实际上是对num-1的判断。return 1也是对 sum(num -1)的返回值。
reurn 中调用函数,参数为递变值,即可完成函数的递归调用。
二:函数表达式
第一种函数的声明方式: function m (){}
第二种函数的声明方式: 函数表达式(有名、匿名): var a = function m(){} a() // js把=右侧的函数声明当初表达式,因此这种赋值方式叫函数表达式的赋值。
只能通过变量名(),haha()来调用函数,
自动失效:以函数表达式方式声明的函数,函数表达式里的函数就不再是函数
haha虽然能调用函数,但是haha的名字是xixi
有名函数:
匿名函数:基于函数表达式的赋值以及name就知道下面haha为什么是匿名函数,虽然haha能调用函数体,但是haha没name值。
总结:函数的声明 1: function a(){}
函数表达式 2 有名:var a= function b(){} [尽量不要用有名的函数表达式】
匿名: var a= function(){}