You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Discord.js V13 如何获取命令中被提及用户的账号创建日期

注意:我当前使用的是 v13 版本的 "discord.js"。

现有命令代码

if (command === 'check') {
    if (message.member.permissions.has(['KICK_MEMBERS'])) {
      let mentioned = message.mentions.users.first();
      let name = mentioned.username

      message.channel.send(`Account name: ${name}.`) 
      message.channel.send(`Account ID: ${mentioned.user.}`)

    } else if (!message.member.permissions.has(
    ['KICK_MEMBERS'])) {
      message.channel.send('You do not have permissions to do this command!')

    } else {
      message.channel.send('An error has occured while attempting to run the command.') 
    }   
}

let mentioned = message.mentions.users.first(); 用于获取被提及的用户

命令调用方式

!check @Downrest

解决方案

你代码里的mentioned本身就是从用户提及列表中获取的User类实例,不需要额外加.user调用,要获取账号创建日期直接调用mentioned.createdAt属性即可,该属性返回标准JS Date对象,可直接使用或按需求格式化后输出。
同时你原代码里获取用户ID的写法有误,正确写法为mentioned.id,优化后的代码示例如下:

if (command === 'check') {
    if (message.member.permissions.has(['KICK_MEMBERS'])) {
      // 增加非空判断,避免未@用户时程序报错
      if (!message.mentions.users.size) {
          return message.channel.send('你需要@一个目标用户才能使用该命令')
      }
      const mentioned = message.mentions.users.first();
      // 转换为本地可读时间格式,可根据需求调整格式化规则
      const createDate = mentioned.createdAt.toLocaleString(); 
      message.channel.send(`账号名: ${mentioned.username}`) 
      message.channel.send(`账号ID: ${mentioned.id}`)
      message.channel.send(`账号创建时间: ${createDate}`)
    } else {
      message.channel.send('你没有使用该命令的权限!')
    }   
}

内容的提问来源于stack exchange,提问作者Downrest

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 00:57:02