如何在Chrome或Safari中的缩小JS功能上设置断点?

Bla*_*oll 59 javascript debugging safari webkit google-chrome

我想在Chrome或Safari JavaScript调试器的"Cart.add"功能中设置断点.问题是,这个函数是在一个大的缩小的JS文件中定义的,并且它本身不存在于一行上.

一些文档说基于WebKit的调试器在调试控制台中支持"break"或"debug"命令,但这些命令似乎不适用于较新版本的调试器.

在JS文件的该上设置断点也不起作用,因为该行上有许多函数.

有什么建议?

ser*_*erg 156

在Chrome中打开Scripts标签页时,您可以通过单击{ }底部的按钮("漂亮打印")来美化所选文件.之后,您可以找到您的线并设置断点.在页面刷新后,代码将保持用断点进行美化.

  • 不,它不会保持美化 (24认同)
  • 没有为我工作.它保持美化,但永远不会达到断点,总是执行缩小的脚本. (17认同)
  • 这个功能曾经有用,但是现在(53.0.2785.143)我再也无法让它工作了.很想知道它是否是Chrome中的错误/功能丧失,或者我已经破坏的设置/我做错了什么 (7认同)
  • 这个提示太棒了,不要以为我会自己想出这个. (6认同)
  • 出于某种原因,这并不适用于所有人:https://code.google.com/p/chromium/issues/detail?id = 415406 (4认同)

Mik*_*uel 5

debugger声明可能是你在找什么.

评估DebuggerStatement生成可能允许实现在调试器下运行时导致断点.如果调试器不存在或处于活动状态,则此语句没有可观察到的影响.

生产DebuggerStatement:debugger ;的计算方法如下:

  1. 如果实现定义的调试工具可用并启用,那么

    一个.执行实现定义的调试操作.

    湾 让result为实现定义的Completion值.

  2. 其他

    一个.让结果为(正常,空,空).

  3. 返回结果.

break语句用于退出循环和switch语句,与调试无关.

真正的解决方案是首先不要破坏你的代码:)