我正在开发一个 HTML5 游戏,作为功能之一,我希望更高级的用户能够用 javascript 编写可以由游戏中的对象运行的简短脚本。问题是我想限制玩家脚本可以做什么,这样他们就不能打开新窗口、作弊、修改游戏的性质等。但是,我想向脚本公开某些方法,所以他们可以做出有用的东西。
一些人建议我可以使用 Web Workers 来做到这一点。其他人告诉我,我需要在 javascript 中构建一个解释器来执行此操作。显然,我不能只使用 eval,那么如果有“最佳”方法,我该怎么做?最好的方法是什么?