«Объединить» 2 переменные, чтобы объявить новую? - PullRequest
0 голосов
/ 29 мая 2019

Я новичок в кодировании и пытаюсь объявить переменную, которая ссылается на 2 «объединенных» ранее объявленных переменных, следующим образом:

var player1 = "Red", player2 = "Blue", player3 = "Green";
var p=1;
var Red = {x: 2, y: 4};
var Blue = {x: 6, y: 2};
var Green = {x: 8, y: 1};

var x = player+p.x; // should be player+1 so "Red" so x=2 
var y = player+p.y; // should be y=4

console.log(x);
console.log(y);

x и y должны быть координатами игрока n ° pв зависимости от цвета этого игрока (в этом примере игрок № 1).

Надеюсь, это достаточно ясно!Спасибо за вашу помощь!

Ответы [ 2 ]

1 голос
/ 29 мая 2019

Возможно, вы ищете массив из объектов :

var players = [
  {
    name: "Red",
    x: 2,
    y: 4
  },
  {
    name: "Blue",
    x: 6,
    y: 2
  },
  {
    name: "Green",
    x: 8,
    y: 1
  }
];

players.forEach((player,index)=>{
  console.log(`Player ${index+1} = ${player.name} position is = x:${player.x},y:${player.y}`);
});

Таким образом, вы можете получить доступ к нужному элементу, выполнив: players[index]. И чтобы получить его свойства, вам просто нужно назвать его так: players[index].name для имени.

1 голос
/ 29 мая 2019

Вы можете использовать массив для того, что, я думаю, вам нужно:

var players = ["Red", "Blue", "Green"];
var p = 1;
console.log(players[p]);

Если вам нужна дополнительная информация для каждого игрока, то это может быть массив объектов:

var players = [{color: 'Red', x: 2, y: 3}, // etc]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...