callee,caller区别

程序:

(function caller(){

  function c(){

    alert(c.caller);

  }

  c();

})();

caller返回的是:

function caller(){

  function c(){

    alert(c.caller);

  c();

  }

}

,caller必须在当前函数执行时才有意义,如果alert(caller.caller),那么返回null;

(function callee(){

    alert(arguments.callee);

})();

callee返回的是:

   function callee(){

     alert(arguments.callee);

   }

arguments.callee.length代表函数的形参数量,可做判断用。

posted @ 2012-07-22 21:00  Alexander.liu  阅读(1773)  评论(0编辑  收藏  举报