Caller和Calee返回错误

时间:2015-10-20 02:40:00

标签: javascript

我正在学习JavaScript并尝试检查Arguments对象的调用者和calle属性。

这是我的代码

function showFunc() {
    var funcname = arguments.calee.name;
    console.log(funcname);
}
showFunc();

现在它在控制台中显示错误

  

未捕获的TypeError:无法读取属性' name'未定义的

请告诉我哪里出错了。

1 个答案:

答案 0 :(得分:2)

callee而非calee

  

警告:第5版ECMAScript(ES5)禁止在严格模式下使用arguments.callee()。避免使用arguments.callee()通过为函数表达式赋予名称或使用函数必须调用自身的函数声明。有关caller callee

的更多详情      

Why was the arguments.callee.caller property deprecated in JavaScript?

function showFunc() {
    var funcname = arguments.callee.name;
    console.log(funcname);
}
showFunc();