首页 > 解决方案 > JavaScript 编译器

问题描述

我试图从 textarea 编译 JS 代码并获取此代码的输出,我尝试使用eval(),但没有得到完整的响应。如何从字符串编译 JS 代码并获得完整响应?(如 playcode.io)

标签: javascriptnpmdependencies

解决方案


您可以尝试使用 Function 构造函数

但要小心 XSS 攻击

const code = 'Math.abs(-1)';
const result = new Function('', 'return (' + code + ')')();

console.log(result) // 1

您也可以使用第一个字符串通过参数传递参数

const code = 'Math.abs(someNumber)';
const runCode = new Function('someNumber', 'return (' + code + ')');

runCode(-1);

推荐阅读