从控制台调用 Javascript 函数

IT技术 javascript function google-chrome-devtools developer-tools
2021-03-17 04:39:23

在 Chrome 的 JavaScript 控制台中,如何调用属于我正在查看的网页中包含的 .js 文件的函数?

6个回答

如果它在闭包内,我很确定你不能。

否则,您只需执行functionName();并按回车键即可。

undefined是函数的返回值。Chrome 的开发工具会自动打印从控制台调用的任何函数的返回值。如果它不起作用,你会看到ReferenceError: functionName is not defined红色。
2021-05-05 04:39:23
不适合我:functionName();在 chrome 开发人员工具中的 firebug 中显示“未定义”是可以的。
2021-05-07 04:39:23
没有人会对这种行为感到困惑,对吧?:)
2021-05-15 04:39:23

控制台将返回 ReferenceError 的示例是将函数放入 JQuery 文档就绪函数中

//this will fail
$(document).ready(function () {
    myFunction(alert('doing something!'));
    //other stuff
})

成功地将函数移到文档就绪函数之外

//this will work
myFunction(alert('doing something!'));
$(document).ready(function () {          
    //other stuff
})

然后在控制台窗口中,输入带有'()'的函数名称以执行该函数

myFunction()

还有一个用处是能够打印出函数体来提醒自己函数的作用。通过从函数名称中去掉 '()' 来做到这一点

function myFunction(alert('doing something!'))

当然,如果您需要在加载文档后注册该功能,那么您不能这样做。但是你也许可以解决这个问题。

非常感谢托尼。完美答案
2021-05-01 04:39:23

这是一个较旧的线程,但我只是搜索并找到了它。我刚开始使用 Web 开发人员工具:主要是 Firefox 开发人员工具 (Firefox v.51),但也有 Chrome DevTools (Chrome v.56)]。

我无法从开发者工具控制台运行函数,但我随后发现了这个

https://developer.mozilla.org/en-US/docs/Tools/Scratchpad

我能够将代码添加到 Scratchpad,突出显示并运行一个函数,根据附加的屏幕截图输出到控制台。

我还添加了 Chrome 的“Scratch JS”扩展:看起来它提供了与 Firefox 开发者工具中的 Scratchpad 相同的功能(下面的屏幕截图)。

https://chrome.google.com/webstore/detail/scratch-js/alploljligeomonipppgaahpkenfnfkn

图 1(火狐):http : //imgur.com/a/ofkOp

在此处输入图片说明

图 2(Chrome):http : //imgur.com/a/dLnRX

在此处输入图片说明

您可以使用调用它

window.function_name()

或者直接不window喜欢

function_name()

基本上,这里有两种情况:

  1. 您的函数在全局范围内。在这种情况下,只需打开一个控制台并调用它yourFunction()
  2. 您的函数范围在其他一些函数内,不能全局访问。在这种情况下,您可以打开 Sources 选项卡,找到您的 .js 文件,在外部函数底部的任意位置放置一个断点(如果代码已经运行,您可能需要在此之后刷新页面)并yourFunction()在控制台中调用. 此外,在断点处,您可以window.yourFuncRef = yourFunction在控制台中执行类似操作,以便稍后随时访问它。
我尝试了上面的第二个选项,它几乎有效,我添加了一行并放置了一个断点,当尝试以 var = function 的形式调用我的函数时,出现错误“Uncaught ReferenceError: showBuy is not defined”,但是控制台本身向我展示了该功能,我只需要按 Tab+Enter
2021-05-14 04:39:23
如果您未定义,这可能意味着您在函数的实际定义之前放置了一个断点。也许您可以提供有关如何定义函数以及在哪里设置断点的更多详细信息?
2021-05-17 04:39:23