当模式为random时,我得到一个undefined
递归 Switch 语句的值。这个想法是最随机的,它会随机选择一个数字并设置一个新的模式并返回原始的 switch 语句。
当模式不是随机的时,一切正常。所以我不确定这里有什么问题。
变量a
是模式,而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;
}
}