javascript - 如何为多个用户存储信息
问题描述
我正在为朋友开发一个 DnD 不和谐机器人,我希望能够让玩家使用命令并输入他们的信息(例如角色的名字/姓氏、种族、班级等)
我尝试使用地图,但我对使用地图很陌生,无法弄清楚如何嵌套其他人和/或如何访问它。
我将如何完成这样的事情?
我研究过使用数组或列表,但不知道从哪里开始
所以我想可能像这样的 v 使用用户 ID 作为键,所以如果提到的用户或作者使用某个命令,它将检查一个是否已经制作,如果它正在做其他事情,如果没有生成类似的东西,他们可以填写信息
我也知道 map() 可以像这样嵌套,只是我真的不知道如何访问存储在键下方的信息,就像我希望有人使用像 !set character firstname 这样的命令并能够将他们的角色的名字放在一起。
每次我尝试这样做时,我总是得到一个错误,说 key.firstname.get() is not a function
{
key: member.id {
firstname: 'Bob',
lastname: 'Doofensmurf',
race: 'human',
class: 'Rogue'
// Etc.
},
key: another.member.id {
firstname: 'Jack',
lastname: 'Nickleson',
race: 'Elf',
class: 'Wizard'
// Etc.
}
}
解决方案
Your syntax is wrong. It should be like this:
let arrayname = [
{
key: member.id,
firstname: 'Jack',
lastname: 'Nickelsen',
race: 'elf'
// etc
},
{
key: anothermember.id,
firstname: 'Jack',
lastname: 'beanstalk',
race: 'elf'
// etc
}
];
Note that I changed the opening and closing brackets to [ and ] because it is now an array, not an object. And to access,
alert(arrayname[0].firstname);
It should show Jack.
推荐阅读
- python - 根据其他数据框的列填充数据框列
- esp-idf - 从 AWS S3 执行 esp-idf OTA 更新时出错
- python - 没有其他用户的 Python Discord 私人消息
- android - 对记录数据进行更新时,不会触发 Android Fragment LiveData 观察器
- google-cloud-firestore - 使用云功能和 Firestore 更新文档 1 小时后运行一些代码
- r - 在 for 循环中按字符模式(grepl)对数据帧的行进行子集
- flutter - flutter moor 在迁移后添加初始数据
- sortablejs - Sortablejs - 如何从排序中排除元素
- python - 自定义常规比例(pyplot)
- shell - 用于验证具有不同字段的 3 个文件的 awk 程序