如何使用命令中有多少个参数的长度来创建命令?

How do I make a command with the length of how many arguments are in the command?

这可能听起来很奇怪,但我不知道如何描述它。我正在尝试用一个命令制作一个不和谐的机器人,某些人可以在其中编写 javascript 代码来动态地使用机器人做事,但我不知道如何让它与多个空间一起工作。我希望它使用尽可能多的空间或尽可能少的空间,但这只适用于刚好有 10 个空间的空间。

if(command === '!cmd') {
    if(message.author.id != ownerid) {
        bot.guilds.get(guildid).channeks.get(generalchan.sned("YOU ARE NOT ALLOWED TO USE THIS COMMAND\nTHIS IS YOUR ONLY WARNING"))
        } else if(message.author.id === ownerid) {
            eval(messageArray[1] + " " + messageArray[2] + " " + messageArray[3] + " " + messageArray[4] + " " + messageArray[5] + " " + messageArray[6] + " " + messageArray[7] + " " + messageArray[8] + " " + messageArray[9]);
            message.delete();
        }
}
Let evalStr = ""
For(let element of messageArray){
evalStr += element + " "
}
eval(evalStr)

您需要切掉结尾的 space 个字符。

但是您要 message.content 然后将每个单词拆分成一个数组。然后尝试将数组重新融合在一起,重新添加 spaces。您应该只删除消息的前 x 个字符。 x 为 prefix.length 的内容 + 命令并对结果求值。

Eval 命令非常危险。在实施这些之前,请确保您知道自己在做什么。

编辑:本指南值得一看并收藏。

https://anidiotsguide.gitbooks.io/discord-js-bot-guide/examples/command-with-arguments.html