#javascript #object #key #add
#javascript #объект #Клавиша #Добавить
Вопрос:
У меня есть объект, который представляет инвентарь пользователя discord:
if (!userData[sender.id message.guild.id].money) userData[sender.id message.guild.id].inventory = {};
Этот код «спрашивает», есть ли в файле, который я использую в качестве базы данных ( .json
файла, кстати), объект инвентаризации, и, если нет, он создает объект.
Я хочу добавить ключ к этому объекту, как только пользователь что-то купил в магазине моего бота (конечно, это не настоящий магазин, я создаю экономичную систему для своего бота). Ключ будет выглядеть примерно так:
..."inventory": { "1": "melon", "2": "apple" }
Кстати, «…» это потому, что есть некоторые вещи раньше, и "1"
, "2"
, это ключи примера, они представляют товары, которые купил пользователь.
Комментарии:
1.
....inventory.3 = "banana"
или с помощью буквенно-цифровых клавиш....inventory[key] = "banana"
2. Да, но… Я хочу добавить ключ. Делая то, что вы упомянули, я бы просто установил значение «inventory.3», но мне все равно нужно было бы его установить, что было бы невозможно, если бы у пользователя было много элементов.
3. Если у вас нет уникальных ключей для элементов, используйте массив. Или есть какая-то причина, по которой он должен быть объектом? Тогда вы могли бы просто
....inventory.push("banana")
4. Да, у вас есть на то причина. Причина: по сути, предметы, которые приобретаются в «магазине» бота, тоже являются объектами. Я хочу добавить эти объекты в объект инвентаря.
5. Можете ли вы использовать идентификаторы элементов в качестве ключей?