私は単純な進化的AIに取り組んでいます。匿名関数を動的に生成する必要があります。そのために、条件とアクションのリストがあります。
   var conditions = [
    function () { return enemyNear(), }, 
    function () { return mySpeed() > 5; }, 
    function () { return 1 === 1; }];
   var actions = [
      function () { return alert('walk'); },
      function () { return alert('jump'); } 
      function () { return alert('attack'); } ]
コードは、それぞれ1つを選択して、新しい関数を生成します。
condition = conditions [Math.floor(Math.random()*conditions .length)];
actions = conditions [Math.floor(Math.random()*actions .length)];
選択した条件がenemyNear()であり、選択したアクションがwalk()である場合、単純な無名関数を生成するにはどうすればよいですか?
behavior = function() {
    if(enemyNear()) {
        walk();
    }
}
必要に応じて、配列の保存方法を変更できます。これはどのように行うことができますか?
すべての文字behaviorsは、次のようにループ内で呼び出されます。
for(i=0,i<chars.length,i++) {
chars[i].behavior.call();
}