javascript - 如何仅从 discord.js v12 中的 message.guild.members.fetch() 获取 UserID?
问题描述
我正在尝试随机获得奖品,我想获取整个对象变量,然后将整个事物隔离开来,因此我只获得了用户 ID 的列表
这是我做的一个例子console.log(message.guild.members.fetch())
:
Promise {
Collection [Map] {
'123456789012345678' => GuildMember {
guild: [Guild],
user: [User],
joinedTimestamp: 1234567890123,
lastMessageID: '012345678901234567',
lastMessageChannelID: '012345678901234567',
deleted: false,
_roles: [Array]
},
'234567890123456789' => GuildMember {
guild: [Guild],
user: [User],
joinedTimestamp: 1234567890123,
lastMessageID: null,
lastMessageChannelID: null,
premiumSinceTimestamp: null,
deleted: false,
_roles: [Array]
},
'345678901234567890' => GuildMember {
guild: [Guild],
user: [ClientUser],
joinedTimestamp: 1234567890123,
lastMessageChannelID: null,
premiumSinceTimestamp: null,
deleted: false,
_roles: [Array]
}
}
}
我只想得到该行的123456789012345678
一部分'123456789012345678' => GuildMember {
解决方案
使用keys
方法(继承自Map
):
message.guild.messages.fetch().then(members => {
const userIDs = [...members.keys()]
// Do something with the IDs here
})
使用异步/等待:
const userIDs = [...(await message.guild.messages.fetch()).keys()]
// Do something with the IDs here
推荐阅读
- c++ - 如何修复代码中的分段错误?
- ios - xcodebuild ios 导出存档在成功构建时失败
- python - 写入同一文件的多个进程引发 Permission denied 错误
- r - 如何遍历列表集合以调用 R 中的函数?
- javascript - 如何根据用户输入使用动态 ng-repeat
- javascript - 如何删除javascript中的函数
- javascript - Vue.js 动态组件不会改变
- react-native - 如何使 materialTopTabNavigation 粘到父屏幕动画视图(标题)?
- javascript - 自定义加载画面只覆盖了一半的场景
- docker - Mailu 在运行“本机”nginx Web 服务器的 Raspberry Pi 上使用 docker