モードがrandomundefined
のときに、再帰的な Switch ステートメントの値を取得しています。アイデアは、最もランダムなIDであり、ランダムに番号を選択して新しいモードを設定し、元のswitchステートメントを返すというものです。
モードがランダムでない場合、すべてが正常に機能します。したがって、ここで何が問題なのかわかりません。
variablea
はモードで、i,j
は単なる数値です。
switchMode: function (i, j, a){
var b;
console.log(a);
switch(a) {
default:
case 'add':
console.log(i, j);
b = i + j;
break;
case 'minus':
console.log(i, j);
b = i - j; //negative numbers possible
break;
case 'multiply':
console.log(i, j);
b = i * j; //0 possible
break;
case 'random':
this.randomSwitchMode(i, j);
break; //random
}
return b;
},
randomSwitchMode: function(i, j) {
var c = Math.ceil(Math.random() * 3);
console.log(i, j, c);
switch(c) {
default:
case 1:
var a = 'add';
console.log(a);
this.switchMode(i, j, a);
break;
case 2:
var a = 'minus';
console.log(a);
this.switchMode(i, j, a);
break;
case 3:
var a = 'multiply';
console.log(a);
this.switchMode(i, j, a);
break;
}
}