相关疑难解决方法(0)

在JS中动态创建函数

我正在为JS游戏创建AI引擎,它由有限状态机构成.我正在从XML加载状态数和它们的变量值.我也想加载行为,因为我没有时间创建脚本语言,我认为将JS代码"插入"外部文件(在XML节点内)并在上面执行它是个好主意.需求.

这样的事情

<evilguy1>
    <behaviour>
        this.x++;
    </behaviour>
    <behaviour>
        this.y++;
    </behaviour>
</evilguy1>
Run Code Online (Sandbox Code Playgroud)

对于这样的事情:

function behaviour_1(){
    this.x++;
}
function behaviour_2(){
    this.y++;
}
Run Code Online (Sandbox Code Playgroud)

我的问题是,现在我已经加载了代码,我该如何执行它?我想为每个代码'node'创建一个具有唯一名称的函数,然后从游戏逻辑中调用它们,但我不知道这是否可行(因为你可以从HTML加载更多的JS代码,你也应该能够从JS代码中做到这一点,没有?).如果没有,有没有类似的解决方案?提前致谢!

(PS:外部库依赖性越小越好)

编辑1:

好的,现在我知道如何创建包含代码的函数

window[classname] = function() { ... };
Run Code Online (Sandbox Code Playgroud)

javascript

27
推荐指数
3
解决办法
5万
查看次数

标签 统计

javascript ×1