Javascript 有什么方法可以延迟我的机器人赋予用户的角色吗?

Javascript 有什么方法可以延迟我的机器人赋予用户的角色吗?,javascript,bots,discord.js,Javascript,Bots,Discord.js,我想知道是否可以设置一个时间(以毫秒为单位),在用户触发命令后,我的bot将角色授予用户,例如,一旦用户键入“!Verify”,bot将在某个时间之前不会将角色授予用户,这是我为我的bot设置的操作 bot.on('ready', () => console.log(`${bot.user.tag} has logged in fucker.`)); bot.on('message', async message => { if (message.author.bot) ret

我想知道是否可以设置一个时间(以毫秒为单位),在用户触发命令后,我的bot将角色授予用户,例如,一旦用户键入“!Verify”,bot将在某个时间之前不会将角色授予用户,这是我为我的bot设置的操作

bot.on('ready', () => console.log(`${bot.user.tag} has logged in fucker.`));

bot.on('message', async message => {
  if (message.author.bot) return;
  
  bot.on('guildMemberAdd', member => {
    console.log(member.user.tag);
  });

  if (message.channel.id === '695566841291997244')
    await message.delete();
  if (message.content.toLowerCase() === '!verify' && message.channel.id === '695566841291997244')
  {
    
    await message.delete().catch(err => console.log(err));
    const role = message.guild.roles.cache.get('695565873515069444');
    if(role) {
      try {
      await message.member.roles.add(role);
      console.log('Role added!');
    }
    catch(err) {
      console.log(err);
      }
    }
  }
});

你可以使用这个表达式


你可以使用这个表达式


因为它是javascript,所以您可以使用
setTimeout
setTimeout(async()=>{await message.member.roles.add(role);},5000)
因为它是javascript,所以您可以使用
setTimeout
setTimeout(async()=>{await message.member.roles.add(role);},5000)
它给我一个SyntaxError:await仅在异步函数中有效嘿,我已经更新了代码,你只需要在setTimeout中添加异步它给我一个SyntaxError:await仅在异步函数中有效嘿,我已经更新了代码,你只需要在setTimeout中添加异步
setTimeout(async () => { 
    await message.delete().catch(err => console.log(err));
    const role = message.guild.roles.cache.get('695565873515069444');
    if(role) {
      try {
      await message.member.roles.add(role);
      console.log('Role added!');
    }
    catch(err) {
      console.log(err);
      }
    };
}, 5000);