4

アンニャンをもっと賢くしたい。そこで、ユーザーの助けを借りてコマンドを追加することにしました。

リマインダーの annyang コマンドは次のように初期化されます。

var commands = {"your speech":yourFunction}
annyang.addCommands(commands);

フォームを使用して、ユーザーが言いたいことと関連する機能を取得します。

speech = "my speech";
myfunction = "mySuperFunction";

しかし、この関数を次のように追加したい場合:

newCommand={speech:myfunction};
annyang.addCommands(newCommand);

Annyang のコメント: コマンドが正常にロードされました: 音声

newCommand をデバッグすると、オブジェクト {speech: "mySuperFunction"} が得られます。

問題を参照してください。JS は、含まれる文字列ではなく、関数名を解釈します。

手伝って頂けますか ?ありがとう !

4

1 に答える 1

1

最初に空のオブジェクトを作成する必要があります。その後、配列構文を使用して設定できます。

newCommand = {}; //empty object
speech = "my speech";
myfunction = "mySuperFunction";

newCommand[speech] = myfunction;

annyang.addCommands(newCommand);
于 2016-01-20T14:33:53.913 に答える