我正在学习JavaScript并尝试检查Arguments对象的调用者和calle属性。
这是我的代码
function showFunc() {
var funcname = arguments.calee.name;
console.log(funcname);
}
showFunc();
现在它在控制台中显示错误
未捕获的TypeError:无法读取属性' name'未定义的
请告诉我哪里出错了。
答案 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();