我有以下代码可以在一个中运行eval():const code = ` async function func() { asd(); } func();`;try { console.log("running code"); return eval(code);}catch (err) { console.log("error"); return err.message;}在这种情况下,asdis undefined,因此我希望引用错误作为字符串 ( return err.message;)返回。但是,不是触发 catch 块,而是抛出异常,就好像没有 try/catch 块一样。但是,如果我要运行eval("asd()"),该catch块将捕获错误并返回一个字符串。对于嵌套函数,我需要做些什么不同的事情吗?注意:由于其他代码(之前const code ...),整个代码在异步函数中,如果这有所不同的话。
添加回答
举报
0/150
提交
取消