定义
为什么需要函数:将重复的具有同一功能的代码放在函数中
- 函数声明
function theFirstName(){
}
console.log(theFirstName);
theFirstName和变量名差不多,指代函数体
- 函数表达式
命名函数表达式
var test=function abc(){
console.log("test");
}
test();
匿名函数表达式——函数表达式
var test=function (){
console.log("test");
}
test();
在命名函数表达式中,变量test指代函数体,abc并不指代函数体,test.name属性为abc,因此常用匿名函数表达式
组成形式
- 函数名称
- 参数
function test(a,b){
//var a;
//var b;
}
形参
实参
在js中,形参的个数和实参个数不一定要相等,形参的个数可以大于实参,实参的个数可以大于形参。因为在函数内部会有一个实参列表arguments存放实参,arguments中的每一个数据会和对应形参形成映射,a<==>arguments[0], b<==>arguments[1], 映射两边任一改变,另一边的值也会跟着改变。如果形参个数大于实参,多余的形参将没有实参映射。
function test(a, b) {
console.log(arguments);
console.log(arguments.length);
}
test(12,1,2,3);
结果:
函数名的length属性指的是参数个数
- 返回值
return的功能
结束函数:return语句后面的语句不会执行
返回值
一般函数处理完都会返回结果,等待后续的处理,而不进行打印操作。