Discord.js TypeError: Cannot read property 'toLocaleString' of undefined

So I began to change my bot to get members from a guiold to show top users

The Code used to be

const { MessageEmbed } = require("discord.js");
const { stripIndents } = require("common-tags");
const { prefix } = require("../../botconfig.json");
const db = require('quick.db')
let bal = require('../../database/balance.json');

module.exports = {
  config:{
    name: "rich",
    aliases: ["leader"],
    category: "economy",
    description: "Tells who is rich",
    usage: "[command | alias]",
  },
    run: async (client, message, args) => {

      let board = [];
  for(let key of Object.keys(bal)){
    let value = Object.assign({user: client.users.cache.get(key)}, bal[key]);
    board.push(value);

  board = board.filter(x => x.user);
  board = board.sort((a,b) => b.balance-a.balance).splice(0, 10);
  top = board.map((x, i) => `${i+1}  ${x.user.username}\n     Balance: ${x.balance.toLocaleString()}`).join('\n\n');
  let embed = new MessageEmbed() 
  .setColor("RANDOM") 
  .setDescription(`**💴 | Top 10 Global Rich User\n\n**${top}`);

  return message.channel.send(embed);

  }
    }
}

I changed the code to get the members from a guild

const { MessageEmbed } = require("discord.js");
const { stripIndents } = require("common-tags");
const { prefix } = require("../../botconfig.json");
const db = require('quick.db')
let bal = require('../../database/balance');
let rep = require('../../database/rep');
let work = require('../../database/works');

module.exports = {
  config:{
    name: "rich",
    aliases: ["r"],
    category: "economy",
    description: "Tells who is rich",
    usage: "[command | alias]"
  },
    run: async (client, message, args) => {
  message.guild.members.fetch().then(guildMembers => {
      let board = [];
  
    
    for(let key of Object.keys(bal)){
    let value = Object.assign({user: client.users.cache.get(key)}, bal[key]);
    board.push(value);
  }
  
  board = guildMembers.filter(guildMember => Object.keys(bal).includes(guildMember.id));
  top = board.map((x, i) => `${i+1}.  **${x.balance.toLocaleString()}** - ${x.user.tag}`).join('\n\n');
  let embed = new MessageEmbed() 
  .setColor("RANDOM") 
  .setDescription(`**Richest Users in ${message.guild.name}\n\n**${top}`);
  
  return message.channel.send(embed);
    })
                                     }
                                     }

I dont know what I did wrong or if I deleted something I was not supposed to but I keep getting the error TypeError: Cannot read property ‘toLocaleString’ of undefined.

@OfficiallyNick, can you try console.loggin the value of x.balance where toLocaleString() is being called?

// isn’t toLocaleString() used to convert dates to a locale string???