【发布时间】:2020-05-30 03:38:30
【问题描述】:
我有一个用于处理命令的switch 语句,它按预期工作。但是,我也有大量的命令/案例。错误检查是为了确保程序在输入不是数字的内容时不会崩溃。有没有办法以某种方式将那些if statements 压缩成function?
case "test":
if (typeof args[1] === 'string')
{
args[1] = parseInt(args[1])
Functions.packs = args[1];
}
else if(Number.isNaN(+args[1]))
{
message.reply("The command was invalid.");
break;
}
else
{
message.reply("The command was invalid.");
break;
}
这是目前每个命令的开头的样子,检查命令变得乏味。我已经尝试为它创建一个函数,但我尝试过的任何方法都没有奏效,所以我怀疑我是否走在正确的轨道上。
【问题讨论】:
-
Functions.packs是什么? -
另一个文件中的变量
Functions。该变量需要设置为用户作为第二个参数输入的内容(!test 2 表示 packs = 2)等等。 -
检查他是否输入了数字,否则(否则)显示错误信息
-
您可以使用正则表达式来执行此操作,例如: if(/[^\d]+/.test(args[1]) { // 如果您找到了数字以外的字符。 ..}
标签: javascript node.js error-handling discord.js