К сожалению , есть ошибки( *по мойму*
Вот исправленный код :
var prefix = "!";
client.on("message", message => {
if(!message.guild) return; //чтобы команда не работала в личных сообщениях!
if(message.author === client.user) return; //чтобы бот не написал сам себе
if(!message.content.startsWith("!")) return; //иначе может начать работать с любым префиксом
const args = message.content.slice(prefix.length).trim().split(/ +/g); //вычисляем аргументы
const command = args.shift().toLowerCase(); //отделяем аргументы от команды
if(command === "ban"){
if(!message.member.hasPermission("BAN_MEMBERS")) return (msg.reply("У вас нет прав для бана !"));
if(!message.guild.me.hasPermission("BAN_MEMBERS")) return (msg.reply("У меня нет прав бана !"));
let member = message.mentions.members.first();
let arg = args[0];
if(!member) return (msg.reply("Вы не написали ник !"));
if(!member ) arg; return (msg.reply("Вы ввели не те данные !"));
let reason = args.slice(1).join(" ");
if(reason) {
member.ban(reason).catch(err => console.log(err));
}else{
member.ban().catch(err => console.log(err));
}
}
});