当前位置: 首页 > 面试题库 >

如何找到JavaScript中的调用者函数?

邵骁
2023-03-14
问题内容
function main()
{
   Hello();
}

function Hello()
{
  // How do you find out the caller function is 'main'?
}

有没有办法找出调用堆栈?


问题答案:
function Hello()
{
    alert("caller is " + Hello.caller);
}

请注意,此功能是 非标准的 ,来自Function.caller

非标准
此功能是非标准的,不在标准范围内。不要在面向Web的生产站点上使用它:它不适用于每个用户。实现之间也可能存在很大的不兼容性,并且将来的行为可能会更改。

以下是2008年的旧答案,现代Javascript不再支持该答案:

function Hello()
{
    alert("caller is " + arguments.callee.caller.toString());
}


 类似资料:
  • 问题内容: 我想知道如何轻松单击(或使用一些简单的快捷方式)函数名称并找到其所有被调用者或打开已定义的位置。Web中的大多数Web手册确实很难遵循或无法制定。说我想单击并查看它的定义位置? 问题答案: 为此,Vim与 cscope 工具集成在一起。请参阅参考资料。

  • 问题内容: 我正在使用以下代码来获取JavaScript调用者函数的名称: 有没有办法发现调用该方法的行号? 另外,是否有办法获取调用该方法的JavaScript文件的名称?还是源URL? 问题答案: 这适用于我在chrome / QtWebView中

  • 这样的函数怎么实现。 这样操作需要 new Sint(1,2) ,有什么办法可以实现直接 Sint(1,2).j(10) 输出结果吗?

  • 问题内容: 如何从PHP调用JavaScript函数? 以下代码来自 xyz.html (单击按钮时),它在外部 xyz.js中 调用a 。这将调用wait.php。 和 wait.php 从那里以同样的方式从另一个PHP文件调用代码。 该否则工作正常,但它不会被调用我想要的方式。 问题答案: 就PHP而言(或者实际上,通常是一个Web服务器),HTML页面只不过是一个大字符串而已。 您可以使用P

  • 问题内容: 我正在做一个网络抓取项目。我正在使用的网站之一的数据来自Javascript。 在我之前的一个问题中,有人建议我可以直接从Python调用Javascript,但是我不确定如何实现。 例如:如果JavaScript函数定义为: 如何从Python调用JavaScript函数? 问题答案: 查找具有Python绑定的JavaScript解释器。(尝试Rhino?V8?SeaMonkey?

  • 问题内容: 我想从JavaScript 调用,这是一个C#函数。我尝试了下面的代码,但是无论JavaScript条件是还是,都被调用了! JavaScript代码: 后面的C#代码: 如何从JavaScript调用C#函数? 问题答案: 您可以使用Web方法和Ajax: