args拆分问题(Discord Bot)

时间:2019-08-15 17:10:46

标签: javascript

我是Java脚本的完整入门者,我不知道启动命令时如何拆分参数。

我以不同的形式使用spliting参数观看了许多YouTube视频。

当我说!args测试时,我应该转到“您在args旁边说了些什么”,但它总是转到第一行

let message = { "content" : "........" }
const prefix = "...."

const args = message.content.slice(prefix.length).trim().split(/ +/g);
const command = args.shift().toLowerCase();

//testing args
if (command === "args") {
  if (!args[1]) {
    message.reply(" you didn't say anything next to args!");
  } else {
    message.reply(" you said something next to args!");
  }
}
console.log(message)

1 个答案:

答案 0 :(得分:0)

shift() 修改原始数组

您的问题可能是您应该测试args [0]而不是args [1],因为您已经在执行const command = args.shift().toLowerCase();时删除了第一项。

const args = message.content.slice(prefix.length).trim().split(/ +/g);
const command = args.shift().toLowerCase();

//testing args
if(command === "args"){
    if(!args[0]){
        message.reply(" you didn't say anything next to args!");
    } else {
        message.reply(" you said something next to args!");
    }
}

这是您的预期行为吗?