我正在制作骰子游戏Pig的JavaScript构建版本。我的代码中大约有4个地方需要检查该轮到谁以确定要计算和显示的内容。当前,我在所有4个地方都使用了切换用例,部分原因是我只是在使用整数1和2来确定玩家1或2。是否有更好的方法来处理此问题?
我认为保留方法内部的处理是最有意义的,但是特别是由于我只有两个玩家,if / else效率更高吗?我发现开关盒更具可读性。
c.hold = function(){
if(m.gameIsWon){return;}
console.log('holding your turn total!');
switch(m.playerTurn){
case 1:
m.playerOneOverallTotal += m.playerOneTurnTotal;
console.log(`your overall total is now ${m.playerOneOverallTotal}`);
console.log(`moving onto ${m.playerTwo}'s turn`);
m.playerOneTurnTotal = 0;
m.playerTurn = 2;
break;
case 2:
m.playerTwoOverallTotal += m.playerTwoTurnTotal;
console.log(`your overall total is now ${m.playerTwoOverallTotal}`);
console.log(`moving onto ${m.playerOne}'s turn`);
m.playerTwoTurnTotal = 0;
m.playerTurn = 1;
break;
default:
console.log(`Something went wrong: ${m.playerTurn}`);
break;
}
c.roll(m.playerTurn);
};