Javascript 如何选择多个获胜者?

Javascript 如何选择多个获胜者?,javascript,discord,discord.js,Javascript,Discord,Discord.js,所以我在这里做的是从我提到的人中挑选一个获胜者,例如:+giveaway 1@user1@user2@user3,它随机为我挑选一个获胜者。我想做的是挑选一个以上的获胜者。我对javascript有点陌生,因此非常感谢您的帮助 const discord = require('discord.js') module.exports = { commands: ['giveaway', 'pick'], minArgs: 2, expectedArgs: "<Winn

所以我在这里做的是从我提到的人中挑选一个获胜者,例如:+giveaway 1@user1@user2@user3,它随机为我挑选一个获胜者。我想做的是挑选一个以上的获胜者。我对javascript有点陌生,因此非常感谢您的帮助

const discord = require('discord.js')

module.exports = {
  commands: ['giveaway', 'pick'],
  minArgs: 2,
  expectedArgs: "<Winner Amount> <Targets>",
  permissionError: 'You must have the right permissions to use this command.',
  // permissions: 'ADMINISTRATOR',
  callback: async (message, arguments) => {
    const mentions = message.mentions.users
    const members = mentions.map(user => user.username)
    const ranMembers = shuffle(members)

    const embed1 = new discord.MessageEmbed()
    .setColor('RED')
    .setDescription('Please tag the users to pick from!')
    const embed2 = new discord.MessageEmbed()
    .setColor('RED')
    .setDescription('Please provide the amount of winners!')

    if (mentions.size === 0) {
      message.channel.send(embed1)
      return
    }

    const winners = arguments[0]
    if (isNaN(winners)) {
      message.channel.send(embed2)
      return
    }

    if (winners == 1) {
        const embed = new discord.MessageEmbed()
        .setColor('RANDOM')
        .setTitle('Maybe you can shuffle your array multiple times and select the N first elements

let members = mentions.map(user => user.username)

//Shuffle array 10 times
for(i=0; i<10; i++){ members = shuffle(members)}

//Then choose the first N (Number of winners)
const selectedWinners = members.slice(0, winners);
const discord=require('discord.js')
module.exports={
命令:['giveway','pick'],
尖塔:2,
预期的args:“”,
permissionError:“您必须具有使用此命令的正确权限。”,
//权限:“管理员”,
回调:异步(消息、参数)=>{
const-indications=message.indications.users
const members=indications.map(user=>user.username)
const ranMembers=shuffle(成员)
const embed1=new discord.MessageEmbed()
.setColor(“红色”)
.setDescription('请标记要从中选择的用户!')
const embed2=new discord.MessageEmbed()
.setColor(“红色”)
.setDescription('请提供获奖者的数量!')
if(提及。大小===0){
message.channel.send(嵌入1)
返回
}
常量=参数[0]
国际单项体育联合会(伊斯南(优胜者)){
message.channel.send(嵌入2)
返回
}
如果(获胜者==1){
const embed=new discord.MessageEmbed()
.setColor(“随机”)

.setTitle(“也许可以将数组洗牌多次,然后选择前N个元素

.setDescription(`**${winners.join(",")}** won the giveaway!`)

两个胜利者是一场争吵,两个以上是一场战争……你能用代码更详细地解释一下你的问题吗?@Teemu尽管如此,OP可能还是应该研究
Array.prototype.slice
以寻求解决方案