关于getFuncName函数内部自引用的解析及MDN参考查询
关于getFuncName函数内部引用自身的解释
函数内部的
getFuncName就是当前这个函数自身的引用,和你在全局作用域里用这个名字指向的是同一个函数对象。在非箭头函数的内部,函数名本身会作为一个变量存在于当前函数的作用域中,直接调用它就能访问到函数自身。这段代码的作用是获取调用
getFuncName的那个函数的名称:getFuncName.caller会返回调用当前函数的函数对象,再通过.name就能拿到该函数的名称属性。举个实际运行的例子:
function testCaller() { console.log(getFuncName()); } testCaller(); // 控制台会输出 "testCaller"
- 对应的MDN文档说明:MDN中关于
Function.caller的条目里,明确提到了这种通过函数自身访问caller属性的用法;另外,函数标识符在自身作用域内的可访问性,属于JavaScript函数作用域的基础规则,在MDN的函数相关文档中也有对应说明。
内容的提问来源于stack exchange,提问作者fl4t1
相关产品推荐
相关产品推荐

