相关疑难解决方法(0)

JavaScript 重新抛出一个保留堆栈跟踪的异常

在 Chrome 中,当发生异常时,它会将堆栈跟踪打印到控制台日志。这非常有用,但不幸的是,在重新抛出异常的情况下,这会导致问题。

} catch (e) {
    if (foo(e)) {
        // handle the exception
    } else {
        // The stack traces points here
        throw e;
    }
}
Run Code Online (Sandbox Code Playgroud)

不幸的是,jQuery.js如果它们来自内部事件处理程序,以下代码会导致所有异常都出现此问题。

try {
    while( callbacks[ 0 ] ) {
        callbacks.shift().apply( context, args );
    }
}
// We have to add a catch block for
// IE prior to 8 or else the finally
// block will never get executed
catch (e) {
    throw e;
}
finally {
    fired = [ context, …
Run Code Online (Sandbox Code Playgroud)

javascript stack-trace throw

5
推荐指数
1
解决办法
4436
查看次数

标签 统计

javascript ×1

stack-trace ×1

throw ×1