Как найти название массива по его параметру?

Например, есть вот такой массив:

players["d453fsd"] = {
   x: 150,
   y: 200,
   id: "1"
};

Как найти его название ("d453fsd") по его ID ("1") ?


Ответы (2 шт):

Автор решения: lksmnd

Я нашел как найти его. Нужно добавить параметр с таким же названием, то-есть.

players["d453fsd"] = {
   x: 150,
   y: 200,
   id: "1",
   zid: "d453fsd"
};

Этот код поможет найти его.

var playerid = "";
for (var id in players) {
    var player = players[id];
    if (player.id == fid) { // fid - Искомый параметр.
        playerid = player.zid;
    } else {
        
    }
}
if (playerid != "") {
    console.log("Игрок с таким ID найден!");
} else {
    console.log("Игрок с таким ID не найден!")
}
→ Ссылка
Автор решения: vsemozhebuty

Можно проще и без добавлений (только у вас, кажется, не массив, а объект с вложенными объектами):

const players = {
  d453fsd: {
    x: 150,
    y: 200,
    id: "1"
  },
};

const key = Object.keys(players).find(key => players[key].id === "1");

console.log(key);

→ Ссылка