gpt4 book ai didi

javascript - 如何获取特定 Discord Angular 色的名称?

转载 作者:太空宇宙 更新时间:2023-11-04 01:22:25 25 4
gpt4 key购买 nike

我正在尝试为我的服务器创建一个有许多国际用户的机器人。我们经常遇到的一个问题是协调时间,因为我们遍布世界各地。我想让这个机器人能够告诉你特定用户的时间。我已经让我的所有用户都有一个格式为“UTC[-10 到 +14]”的 Angular 色,表示他们所在的时区。我已经有了这样的功能,当你给它一个 UTC 偏移量时,它会给你那里的时间。我的问题是,如何获取某人姓名的 UTC 偏移量。例如,我有一个用户 @User1#0000,其 Angular 色为 UTC-05。他们还可能具有其他 Angular 色(不是时区 Angular 色)。我怎样才能从刚刚给出名字的某人 Angular 色中得到-05

最佳答案

首先,要获取成员的 Angular 色,您只需使用 roles 属性 member,现在要获取时区 Angular 色,您可以使用 .find 函数 collection具有并在 Angular 色名称开头查找“UTC”,

let utcRole = member.roles.find(role => role.name.startsWith('UTC'))

现在,更困难的部分是解析 Angular 色名称以获取其偏移量,我们可以使用正则表达式和匹配函数来做到这一点,我们想要隔离 +14,用于隔离它的正则表达式将是 [\+\-][0-9]*[^\[\]],因此将其添加到我们的 sudo 代码中,

let utcRole = member.roles.find(role => role.name.startsWith('UTC'))

let offset = utcRole.name.match(/[\+\-][0-9]*[^\[\]]/)[0]

我们开始吧!你将获得你想要的偏移量,现在要记住的一件重要的事情是,你将偏移量作为字符串,并且根据你所说的,你将使用它作为数字,为了在 javascript 中将字符串转换为数字,我们使用 parseInt(),因此要将其转换为数字,

let number = parseInt(offset)

关于javascript - 如何获取特定 Discord Angular 色的名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58803698/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com