function(){} 内部有两个重要的对象
1. arguments , 是一个类数组,它包含着方法传入的所有参数,索引从0开始,有一个重要的属性:callee。
callee是一个指针,指向拥有这个arguments对象的函数。
在递归中非常有用, 例如:
function factorical(num){
if(num<=1){
return 1;
}else{
return num * arguments.callee(num - 1);
//而避免了下面这样写的弊端
return num * factorical(num - 1);//随方法名称变化
}
}
2. this 对象
在function 中写this,默认是代表window,例如:
window.color='red';
var o={color : 'blue'}
function sayColor(){
alert(this.color);
}
sayColor(); //弹出 red
o.sayColor=sayColor;
o.sayColor(); //弹出blue