是否可以为使用eval执行的代码命名?
当浏览器加载文件并执行它,然后代码抛出异常时,浏览器可以告诉我发生异常的行在哪个文件中。
我希望它也可以告诉我发生异常的eval
ed代码的位置和位置。它应该显示我给这个代码的名称。
希望你明白我的意思。
感谢您的帮助!
答案 0 :(得分:1)
在执行eval之前将您的名称分配给本地var,然后将eval包装在try / catch中。在catch中,你将拥有名称和例外。
function evalCode(name, code) {
try {
eval(code);
} catch (e) {
console.log('Error in ' + name + ':');
console.log(code);
throw e;
}
}
您无法让浏览器告诉您eval'd代码中的哪一行包含问题,因为代码被视为一个不同的单元,但您可以记录问题代码的名称和问题代码如上所述。