是否可以通过使用函数内部声明的变量来获取函数名?
Is it possible to get the function name by using the variable declared inside the function
我可以使用函数内部存在的变量获得函数的名称吗?
function abcd() {
var temp;
alert(" name of the function using temp ");
};
如何使用temp获得函数'abcd'
的名称?
您可以使用arguments.callee.name
,像这样
function abcd() {
console.log("name of the function using", arguments.callee.name);
};
abcd();
# name of the function using abcd
注意: arguments.callee.name
只适用于定义了名称的函数。它不能与匿名函数一起工作。例如,如果您已经定义了函数,如下所示
var abcd = function () {
console.log("name of the function using", arguments.callee.name);
};
abcd()
只会打印name of the function using
。因为在这种情况下arguments.callee.name
将是一个空字符串
在"非严格"模式下可以使用arguments.callee.name
。
但一般情况下你不应该这样做——假设对象或函数的变量的任何信息都是由内部知道的是不安全的,因为可以有多个变量,或者在匿名函数的情况下根本没有名称
相关文章:
- 访问嵌套函数结构中的JavaScript父函数变量
- Javascript函数变量传递语法问题
- JavaScript 函数变量范围问题
- 在 promise 中获取构造函数变量
- 将函数结果传递给Javascript中的另一个函数变量
- 用对象设置函数变量's值
- Javascript函数变量应生成错误,而不是未定义的错误
- 我可以访问用户脚本中的匿名函数变量吗?
- 在实例化期间使用构造函数变量
- 为什么在 JavaScript 中不能用函数变量覆盖字符串变量
- JavaScript 允许调用函数访问调用函数变量
- 如何在嵌套原型中访问 JavaScript 构造函数变量
- 对函数变量的 JavaScript 控制台日志输出感到困惑
- 如何将函数变量传递给主干模型上的 jQuery 事件
- 如何访问构造函数变量
- 实例函数变量不会更改
- 为什么函数变量在变量之后是未定义的
- 用内部函数变量更改外部函数变量?Javascript
- Javascript - 使用闭包递增静态函数变量模拟
- 异步 JavaScript 静态函数变量