我正在用6種不同的問題類型創建一個簡單的數學程序。我希望程序隨機顯示6種類型中的一種,但其中一些問題應該更頻繁地出現。我使用加權數組,但是在從加權數組中選擇問題類型之後,我無法確定它是哪種問題類型,而沒有在if語句中使用10個或更多「或」命令。這裏是一個簡化的版本:太多「或」語句(javascript)
//shuffle array of 10 integers to get a random value
var rand_10 = [0,1,2,3,4,5,6,7,8,9];
fisherYates(rand_10);
//Set weightedProb
weightedProb[0] = probType[0];
weightedProb[1] = probType[0];
weightedProb[2] = probType[0];
.
.
.
weightedProb[8] = probType[0];
weightedProb[9] = probType[1];
theProblem = weightedProb[rand_10[0]];
if(rand_10[0] == 0 || rand_10[0] == 1 || rand_10[0] == 2 || rand_10[0] == 3 ||rand_10[0] == 4||rand_10[0] == 5||rand_10[0] == 6||rand_10[0] == 7||rand_10[0] == 8){
//do something
}else if(rand_10[0] ==9){
//do something else
}
以下是JavaScript費雪耶茨洗牌http://bost.ocks.org/mike/shuffle/ – 2012-02-14 07:20:42
'如果(rand_10 [0]> = 0 && rand_10 [0] <9){} else {}' – Cyclonecode 2012-02-14 07:21:35
如果切換if,則變得更容易:'if(rand_10 [0] === 9){/ *做其他事情* /} else { *做點什麼* /}' – Yoshi 2012-02-14 07:53:20