Javascript 如何在特定行暂停JS脚本执行?
我有一个脚本,我想允许用户在浏览器中进行调试。我可以得到断点的行号,也可以得到局部变量值。我想知道的是,如何在特定行暂停实际的脚本执行?我尝试将隐藏的sleep()调用与本地变量转储代码放在一起,想知道是否有更优雅的解决方案Javascript 如何在特定行暂停JS脚本执行?,javascript,debugging,Javascript,Debugging,我有一个脚本,我想允许用户在浏览器中进行调试。我可以得到断点的行号,也可以得到局部变量值。我想知道的是,如何在特定行暂停实际的脚本执行?我尝试将隐藏的sleep()调用与本地变量转储代码放在一起,想知道是否有更优雅的解决方案 只是澄清一下-控制台对我不可用。我只能使用常规JS脚本功能。我使用chrome开发工具多年,但从未体验过模拟调试器的需要之前由JS代码执行的指令。没有内联方式来暂停javascript,但是使用chrome调试器工具可以让它在某个断点处停止 镀铬: Ctrl+Shift+I
只是澄清一下-控制台对我不可用。我只能使用常规JS脚本功能。我使用chrome开发工具多年,但从未体验过模拟
调试器的需要代码>之前由JS代码执行的指令。没有内联方式来暂停javascript,但是使用chrome调试器工具可以让它在某个断点处停止
镀铬:
Ctrl+Shift+I来源脚本.js点击行号刷新页面使用谷歌chrome控制台ctrlshiftj进入源标签搜索js文件,点击行号设置断点使用网站的开发者控制台浏览器例如,在Firefox中,点击CTRL+SHIFT+S,找到特定的行,然后单击它。它将在到达该行时停止执行
您也可以使用常见的调试步骤:
- 跨过F10
- 进入F11
- 步进回程换档+F11
PS:我也建议使用扩展,我觉得它在我的工作中非常宝贵。它是一个开发人员工具栏,具有许多整洁的功能,性能更好(至少对我来说是这样)。使用调试器代码>语句:
调试器语句调用任何可用的调试功能,例如设置断点。如果没有可用的调试功能,则此语句无效
请参见此处:这是命令:调试器;或者使用console.log
s everywhere:)如果是出于教育目的,也许最好的方法是通知用户打开控制台,而不是找到一种可能不存在的棘手方法。不是,不是。我考虑可视化临时执行状态,同时提供对实际var值的访问。第一个方面更有用。我如何让它只在浏览器中工作而不使用控制台?我原以为它会被忽略,因为控制台不是活动的,它会,你也不会。为什么你的用户想让你劫持他们的浏览器?因为我爱我的用户,并尝试做任何事情让他们的生活更轻松:)开发工具不能以编程方式打开。由于JavaScript是异步的,请考虑将脚本附加到大红按钮类型的回调中。但这就变成了可用性问题,而不是编程问题