callee
是arguments的一个属性没有什么太大用处主要用在未命名的函数中实现递归调用 (javascritp 权威指南)
functions(x) {
if(x <= 1) return 1;
return x * arguments.callee(x-1);
}
caller
caller 是运行时函数的一个属性,返回当前函数的执行域函数,及当前函数是在哪个函数下执行的。注意一定是在运行时才有属性值。
function Outer(){
Inner();
}
function Inner(){
console.log(Inner.caller)//Outer
}
Outer();