如何在TextArea中运行用户发布的代码
JS How to run code posted by user in a TextArea?
我想知道如何在TextArea中运行用户发布的JS代码,当他按下按钮而不刷新整个页面时。我想要一个画布,一个TextArea和一个按钮。当按钮被按下时,它运行来自TextArea的代码,然后在画布上绘制内容。
我知道如何将张贴的代码放入变量字符串。
我不知道的是如何在那个字符串中运行代码。
您应该能够在eval()
函数中包装代码。它计算表示为字符串的JavaScript代码。
的例子:
eval(new String("2 + 2")); // returns a String object containing "2 + 2"
eval("2 + 2"); // returns 4
在你的情况下,你需要从文本区读取代码并将其传递给eval()
,它可能看起来像这样:
eval(document.getElementById('textareaid').value);
如果是HTML,只需将其发送到一个带有提交按钮的变量,然后单击document . write("变量")。
我知道最安全最简单的方法是使用node.js:
function runStr (i){
var vm = require ('vm');
var box = {};
vm.createContext(box);
vm.runInContext(`prgm = function(){return ${i};}`, box);
return box.prgm();
}
console.log(runStr("2 + 2")); // 4
相关文章:
- 使用PHP来阻止用户下载代码,但代码占用cpu
- 用于用户内容的简单代码编辑器/文本格式化程序(在Rails中)
- 试图修改此javascript代码以减小弹出窗口的大小,或者在用户单击框外时关闭
- 检查用户是否具有角色分析云代码
- "“用户友好”;vimeo嵌入,从url获取嵌入代码
- 如何在节点的沙盒环境中执行用户提交的javascript代码
- 正在云代码中检索用户密码
- 是否可以向用户发送javascript代码's浏览器安全
- 在C#中,我如何对客户端用户交互和javascript(jQuery)代码进行单元测试
- 如何使jQuery代码不适用于已登录的Wordpress用户
- 谷歌'的用户令牌和授权代码
- 如何为用户控制编写正确的反应代码
- Javascript承诺:它们能在用户空间代码中完全实现吗
- 我需要让用户输入他的出生日期,并使用javascript检查其形式是否正确.我的代码不起作用
- 解析云代码-在“”中查询用户问题;正常的“;作用
- 我可以向用户隐藏Javascript中的一些代码吗?
- jQuery / bubbling - 如何为非登录用户停止我的 JavaScript 代码
- 如何在安卓应用中运行用户提供的任意代码
- 更改网站的样式代码以允许用户更改大小和样式不起作用
- 分析云代码用户验证