【发布时间】:2020-12-13 03:54:21
【问题描述】:
我已经实现了一项功能,可以向人们展示他们最稀有的角色(最少人拥有的角色)。我通过遍历他们的每个角色并检查有多少人担任该角色来做到这一点。事实证明,如果你有超过 50 个角色,它会明显延迟机器人的响应,所以我想知道是否有更有效的方法来做同样的事情。我的代码在这里:
const rolesOfMember = member._roles
for(const role in rolesOfMember) {
var membersHavingCurrentRole = message.guild.roles.cache.get(rolesOfMember[role]).members.size
if(membersHavingCurrentRole < membersHavingRarestRole) {
membersHavingRarestRole = membersHavingCurrentRole
rarestRoleID = rolesOfMember[role]
} else if(membersHavingCurrentRole == membersHavingRarestRole) {
var rarestRole = message.guild.roles.cache.get(rarestRoleID)
var currentRole = message.guild.roles.cache.get(rolesOfMember[role])
if(rarestRole.comparePositionTo(currentRole) < 0) {
membersHavingRarestRole = membersHavingCurrentRole
rarestRoleID = rolesOfMember[role]
}
}
}
【问题讨论】:
标签: node.js discord.js