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代表函数的形参数量,可做判断用。

原文地址:https://www.cnblogs.com/liuqxFuture/p/2604036.html