JavaScript评估错误


try {
    eval(somejavascript);
} catch(e) {
    console.log(e);
}

给我运行时错误,例如

TypeError: Cannot call method 'leftPad' of undefined

是否有可能调试此错误,即获取在评估表达式中发生错误的字符位置/行号,以及一些堆栈?

我从chrome end thin in estage art。

获得的堆栈

随之而来的是,我无法将示例JavaScript代码放入调试文件中 - 如果我将代码放入文件中并将该文件包含在HTML文档中。

<</p>

我认为您的问题更多是关于调试问题,而不是解决方案。

如果是这样,只需将代码包装在try-catch-statement中(仅用于调试!):

var jscode = 'function baz() { var foo; foo.leftPad(); } baz();';
eval('try { ' + jscode + ' } catch(err) { console.log(err.stack); }');

您可以在这里进行测试。

相关内容

最新更新