Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/379.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 是否可以从另一个脚本停止一个脚本?_Javascript - Fatal编程技术网

Javascript 是否可以从另一个脚本停止一个脚本?

Javascript 是否可以从另一个脚本停止一个脚本?,javascript,Javascript,我开始制作一个简单的js调试器,我想知道如果一个已经运行的脚本没有响应或者我想停止它的setInterval()循环,而我们不知道循环的id,是否有办法停止它 我在Chrome开发工具中注意到,每个文档在document.scripts下都有自己的脚本集合,但我找不到类似间隔列表(例如:window.interval)或任何函数运行时的响应,因此我无法确定是否需要终止函数 当您需要网页扫描程序扩展或调试器时,这可能会很有用。当脚本冻结时,调试器可以刷新页面 编辑: 间隔列表已经被询问并解决了

我开始制作一个简单的js调试器,我想知道如果一个已经运行的脚本没有响应或者我想停止它的
setInterval()
循环,而我们不知道循环的id,是否有办法停止它


我在Chrome开发工具中注意到,每个文档在
document.scripts
下都有自己的脚本集合,但我找不到类似间隔列表(例如:
window.interval
)或任何函数运行时的响应,因此我无法确定是否需要终止函数


当您需要网页扫描程序扩展或调试器时,这可能会很有用。当脚本冻结时,调试器可以刷新页面

编辑: 间隔列表已经被询问并解决了问题


现在剩下的唯一问题是:我如何确定脚本是否被冻结,以便它或页面可以被终止?

间隔和计时器在
窗口
对象上设置,而不限于单个脚本。哦,你说得对!但是仍然没有一个列表可以记录它们,这是否回答了你的问题?我更正了问题,谢谢!如果它完全冻结了,那么我相信你对JS无能为力。JS是单线程的,所以无限循环将冻结它,无法从网页上的其他JS杀死它。另一方面,如果你制作了一个插件,那么有一个带有sendCommand方法的调试器API可能会很有用。间隔和计时器是在
窗口
对象上设置的,不局限于单个脚本。哦,你说得对!但是仍然没有一个列表可以记录它们,这是否回答了你的问题?我更正了问题,谢谢!如果它完全冻结了,那么我相信你对JS无能为力。JS是单线程的,所以无限循环将冻结它,无法从网页上的其他JS杀死它。另一方面,如果你制作了一个插件,那么有一个带有sendCommand方法的调试器API可能会很有用。