Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

164
Views
Discord.js Sorting Array Of Objects glitching text

I have this code where I shuffle an array, and display the first 16 values in a discord.js embed:

const items = require('../schemas/gameSchema');
const items0 = await items.find();
var shuffle = require('shuffle-array');

const items1 = shuffle(items0);

const lb = items1
  .slice(0)
  .map(
    ({ DepositAmount, BetAmount, GameName, TotalPlays }, pos) =>
      `**${GameName}** \n Initial Deposit Amount: **${commaNumber(
        DepositAmount,
      )}** <:bob:809551218217058354> \n Bet Amount:  **${commaNumber(
        BetAmount,
      )}** <:bob:809551218217058354> \n Total Game Plays : ${commaNumber(
        TotalPlays,
      )} 🕹 \n `,
  )
  .join('\n');
const lbnewnew = lb.slice(15);
const newlb = lbnewnew.toString();
let exampleEmbed = new Discord.MessageEmbed()
  .setColor('RANDOM')
  .setTitle('Discover Games')
  .setDescription(`${newlb}`)

  .setTimestamp()
  .setFooter(`You can play games with /game play <game name>`);

await interaction.reply({ embeds: [exampleEmbed] });

Here is the gameSchema (defined in items constant)

const mongoose = require('mongoose')

const adSchema = mongoose.Schema({
    User:String,
    Funds:Number,
    ProfitToClaim:Number,
    TotalProfit:Number,
    TotalLoss:Number,
    DepositAmount:Number,
    BetAmount:Number,
    TotalPlays:Number,
    TotalWins:Number,
    TotalLosses:Number,
    GameName:String,
    GameDescription:String,

})
module.exports = mongoose.model('NewGames', adSchema, 'NewGames')

Everything that I am taking from the schema is defined, but when I run this command, the first element displayed has a broken name with some random letters

enter image description here

or like this enter image description here

There is no game called em or ial in the database, so I am not sure why this is happening

enter image description here

How do I stop it from saying random characters and not displaying the first element's game name? And why is this happening?

about 4 years ago · Santiago Trujillo
1 answers
Answer question

0

It's because you're slicing off the first 15 characters (i.e. lb.slice(15)). Instead, you should keep the first 15 results of items1. You also don't need all those toStrings and template literals.

const description = items1
  .slice(0, 15)
  .map(
    ({ DepositAmount, BetAmount, GameName, TotalPlays }, pos) =>
      `**${GameName}** \n Initial Deposit Amount: **${commaNumber(
        DepositAmount,
      )}** <:bob:809551218217058354> \n Bet Amount:  **${commaNumber(
        BetAmount,
      )}** <:bob:809551218217058354> \n Total Game Plays : ${commaNumber(
        TotalPlays,
      )} 🕹 \n `,
  )
  .join('\n');

let exampleEmbed = new Discord.MessageEmbed()
  .setColor('RANDOM')
  .setTitle('Discover Games')
  .setDescription(description)
  .setTimestamp()
  .setFooter(`You can play games with /game play <game name>`);

await interaction.reply({ embeds: [exampleEmbed] });
about 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!