忽略Chrome JavaScript调试器中的$ break

时间:2011-06-27 12:57:26

标签: javascript exception google-chrome

我在网络应用中使用Prototype,我想在抛出异常(包括已处理的异常)时中断。但是,我不想打破用于流控制的异常,特别是Prototype的throw $break实现中使用的each模式。

function detect(iterator, context) {
  var result;
  this.each(function(value, index) {
    if (iterator.call(context, value, index)) {
      result = value;
      throw $break; // I want to ignore this one
    }
  });
  return result;
}

有谁知道如何让Chrome的调试器忽略特定的异常?或者让它忽略从特定行抛出的异常?或者甚至让它不打破特定的文件?

1 个答案:

答案 0 :(得分:3)

我很确定没有这样的功能。看起来相当完整的documentation没有提到它。此外,Chrome开发者工具使用远程调试协议,其Debugger.setPauseOnExceptions命令没有“文件”参数。也就是说,我还没有弄清楚源代码。

让Chrome的调试器忽略特定的异常或文件在使用jQuery时也会有所帮助。它捕获并重新抛出事件回调中的任何异常(搜索“resolveWith”),使控制台中的消息基本无用。 jQuery一直在内部抛出并捕获异常,因此打破所有异常会产生太多噪音。

相关问题