函数参数:
函数的形参和实参可以是不相同的,如:
function test(a,b,c,d){
console.info(test.length);//可以获得形参个数
return a+b;
}
console.info(test(2,4));//结果6
arguments的使用:
使用1,在函数内对参数获取:
function test(a,b,c,d){
console.info(test.length);//可以获得形参个数
//函数的实际参数 内部就是用一个数组去接收函数的实际参数
//arguments对象,可以访问函数的实际参数
//arguments对象,只能在函数的内部访问和使用
console.info(arguments.length);//2
console.info(arguments[0]);//2
console.info(arguments[1]);//4
return a+b;
}
console.info(test(2,4));//结果6
使用2,做递归的操作(也是最常用的操作):
1).
function test(a,b,c,d){
//其中arguments.callee指的是指向函数的本身
if(arguments.callee.length==arguments.length){
return a+b;
}else{
return '参数不正确!';
}
}
console.info(test(10,40));
2).
function fact(num){
if(num<1){
return 1;}
else{
console.info(num);
return num*arguments.callee(num-1);//推荐使用 arguments.callee(num-1),在这里这个相当于fact(num-1)
};
}
console.info(fact(5));
this对象:
this对象是在运行时基于函数的执行环境绑定的。在全局函数中,this等于window,而当函数被作为某个对象的方法调用时,this等于那个对象。
也就是说this关键字总是指代调用者。