caller和callee的解析与使用-型参与实参的访问

 

caller:是一个函数引用(当前执行函数”被调用的地方”{即这个”被调用的地方”函数引用},如果这个”被调用的地方”是window,则返回【null】),是函数名的属性;

var a = function() {   
alert(a.caller);      //输出:var b = function() {a();}
}   
var b = function() {   
a();   
}   
b();  

callee:返回当前执行函数本身,是arguments的属性。

var a = function() {   
alert(arguments.callee);  //输出:function() {alert(arguments.callee);}
}  

型参与实参的访问

function fn(a,b,c){
    console.log(fn.length);                //型参:输出3
    console.log(arguments.callee.length);  //型参:输出3   【匿名函数的用法】
    console.log(arguments.length);         //实参:输出2
}

fn(1,2);

参考来源:http://blog.csdn.net/laijieyao/article/details/43404953

posted @ 2017-12-11 10:45  DaivdAndLemon  阅读(155)  评论(0编辑  收藏  举报