Discord.js: How do I take everything from an array, and then use every part of the array and react to a message individually?

Here is my current code. I want to, as the title says, take everything from an array then react to a message.

 reactionCount = args.length // how many choices there are
        reactions = [
            '🇦',
            '🇧',
            '🇨', 
            '🇩',
            '🇪'
        ] // chosen reactions in an array
        
        let toReact = reactions.split(0, reactionCount) //here i try to get the first [n] reactions. This comes out as an array. This is the array I want to take everything from and then react
        console.log(toReact) //test
        message.react(toReact) //test

Right now this is trying to react to the message with an array. I am aware I can do this individually, kind of like this (old code)

if (args[4]) {
        const sentMessage = await message.channel.send(`**${message.member.displayName} Started a poll!**\n**A)** ${args[0]}\n**B)** ${args[1]}\n**C)** ${args[2]}\n**D)** ${args[3]}\n**E)** ${args[4]}`)
            sentMessage.react('🇦')
            sentMessage.react('🇧')
            sentMessage.react('🇨')
            sentMessage.react('🇩')
            sentMessage.react('🇪')
        } else if (args[3]) {
            const sentMessage = await message.channel.send(`**${message.member.displayName} Started a poll!**\n**A)** ${args[0]}\n**B)** ${args[1]}\n**C)** ${args[2]}\n**D)** ${args[3]}`)
            sentMessage.react('🇦')
            sentMessage.react('🇧')
            sentMessage.react('🇨')
            sentMessage.react('🇩')
        } else if (args[2]) {
            const sentMessage = await message.channel.send(`**${message.member.displayName} Started a poll!**\n**A)** ${args[0]}\n**B)** ${args[1]}\n**C)** ${args[2]}`)
            sentMessage.react('🇦')
            sentMessage.react('🇧')
            sentMessage.react('🇨')
        } else if (args[1]) {
            const sentMessage = await message.channel.send(`**${message.member.displayName} Started a poll!**\n**A)** ${args[0]}\n**B)** ${args[1]}`)
            sentMessage.react('🇦')
            sentMessage.react('🇧')
        } else if (args[0]) {
            const sentMessage = await message.channel.send(`**${message.member.displayName} Started a poll!**\n**A)** ${args[0]}`)
            sentMessage.react('🇦')
        } 

But I want to save some space.
I want to preface, I am kind of beginner right now, in terms of javascript. I used to be really good, and I could have done this, but I took a year and a half long break and now I am essentially useless.

>Solution :

Ok…

for (var i = 0; i < reactions.length; i++) {
    var toReact = reactions[i];
    console.log(toReact) //test
    message.react(toReact) //test
}

Leave a Reply