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); }');
您可以在这里进行测试。