caller,英文:來訪者。 簡單的說就是誰打電話給我,誰在調用我。函數
callee,英文:被訪者。簡單的說就是接電話的人,就是正在執行的函數。測試
caller是Function的屬性 callee是argument的屬性
測試caller的demothis
function callerDemo() { if (callerDemo.caller) { var a = callerDemo.caller.toString(); alert(a); } else { alert("this is a top function"); } } function handleCaller() { callerDemo(); } handleCaller(); //"function handleCaller() { callerDemo();}"
測試callee的democode
function calleeDemo() { alert(arguments.callee); } calleeDemo();//返回函數function calleeDemo() { alert(arguments.callee);}
ES5 提示: 在嚴格模式下,arguments.callee 會報錯 TypeError,由於它已經被廢除了。