函数:一段可以重复调用的代码块(一等公民 ^ _ ^)
函数声明方式:
使用关键字function + 函数名:function fnName () { }具备整体声明提前与变量名声明提前类似,但变量只是将变量名声明提前,变量值留在本地;函数的声明提前则是整体性的;函数表达式(又称为匿名函数):var fn = function (){ };构造函数:var fn = new Function ();函数调用格式:
1、函数名 + 圆括号(),如:fn(); // 调用函数fn;
2、匿名函数自调(末尾的圆括号()不可省略):
(function () {})(); // 推荐使用方法1!function () { }();+function () {}()-function () {}()函数返回值 return:函数一旦指定return语句,立即终止函数执行,函数内部的后续无法执行
如果函数没有返回值,则默认返回undefined;
函数参数:形参 + 实参
形式参数(形参):函数定义时使用的参数
实际参数(实参):函数调用时使用的参数
ps: 函数的实参和形参必须一一对应
函数参数属于函数的局部变量
函数形参在函数调用时,若果没有传递实参,该形参就是undefined
函数作用域:全局作用域(函数外定义的变量)、局部作用域(函数内部定义的变量)
arguments(实际参数对象): 只有函数内部才有;函数自调可以在函数内部使用arguments.callee(参数);
arguments.callee === 函数本身
如:function fn (num) { …… fn(num); //函数回调 ==等价于==> arguments.callee(num); }