2010.08.22——— javacript arguments.callee

2010.08.22——— javacript arguments.callee

参考: http://nailuo.iteye.com/blog/615345
      http://www.sudu.cn/info/html/edu/javascript/20071219/122932.html

例如:
function test(){ 
   alert(arguments.callee.length)
   alert(arguments.length) 
   alert(arguments.callee);
   if(test.caller) {
        var a= test.caller.toString();
        alert(a);
   }else {
        alert("this is a top function");
   }
}


function a(){ 
   test("sss"); 
} 

a(); 


结果:
0
1
function test(){ 
   alert(arguments.callee.length)
   alert(arguments.length) 
   alert(arguments.callee);
   if(test.caller) {
        var a= test.caller.toString();
        alert(a);
   }else {
        alert("this is a top function");
   }
}
function a(){ 
   test("sss"); 
} 


所以 由此可见:
arguments.callee.length 形参个数
arguments.length	实参个数
arguments.callee	正被执行的 Function 对象
test.caller		对于函数来说,caller 属性只有在函数执行时才有定义。如果函数是由顶层调用的,那么 caller 包含的就是null,要不结果和 functionName.toString 相同







你可能感兴趣的:(JavaScript,java,html,Blog)