获得2个静态值的“另一个”最简单的方法是什么?

时间:2015-10-21 11:05:29

标签: javascript variables logic

我有一个有2个玩家的游戏。它们被称为p1p2。每回合我都要在它们之间切换。这就是我现在所做的事情

var currentPlayer = "p1";
var nextPlayer = (currentPlayer === "p1") ? "p2" : "p1";

但似乎并不优雅。有没有办法从2个预定义值中获取“另一个”。

1 个答案:

答案 0 :(得分:1)

你正在做的是一种非常常见的方法,所以没关系。但如果你想要更优雅的东西,你可以这样做:

var players = ["p1", "p2"];
var playerNum = 0;
var currentPlayer = players[playerNum];
var nextPlayerNum = (playerNum + 1) % players.length;
var nextPlayer = players[nextPlayerNum];

这对于两名球员来说可能有点过头了。但它很容易推广到任意数量的玩家 - 只需在players数组中添加更多元素。

players也可以是包含所有玩家状态的对象数组,而不仅仅是他们的名字。