Follow

Keep Up to Date with the Most Important News

By pressing the Subscribe button, you confirm that you have read and are agreeing to our Privacy Policy and Terms of Use
Contact

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.

MEDevel.com: Open-source for Healthcare and Education

Collecting and validating open-source software for healthcare, education, enterprise, development, medical imaging, medical records, and digital pathology.

Visit Medevel

>Solution :

Ok…

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

Leave a Reply

Keep Up to Date with the Most Important News

By pressing the Subscribe button, you confirm that you have read and are agreeing to our Privacy Policy and Terms of Use

Discover more from Dev solutions

Subscribe now to keep reading and get access to the full archive.

Continue reading