有没有办法从带有 javascript 的字符串创建箭头函数?

Is there a way to create an arrow function from a string with javascript?

这样的 JSON 响应:

res = {
  onChange: "() => { console.log() }",
  .....
}

如何使res.onChange中的字符串成为箭头函数。

res.onChange = Function("() = { console.log()}");不要解决我的问题。

您可以使用 eval 将字符串作为代码执行。

eval("() => { console.log('no') }")();

或者如果您需要一些字符串插值:

const foo = 'bar';
eval(`() => { console.log('${foo}') }`)();

小心恶意注入

编辑:OP,你应该能够从这里推断出你需要做什么。

您可以使用 String.prototype.replace():

res.onChange = new Function(res.onChange.replace(/\(\)\s=>\s\{|\}$/,""))