首页 > 解决方案 > 如何检查字符串是否包含特定数字

问题描述

我正在为我的 Discord 机器人制作电源系统,但我有一个小问题。这是我的代码

  const powerPossibilities = "0" || "1" || "2" || "3" || "4" || "5";

  let powertoset = args[1];

  if (powertoset != powerPossibilities)
    return message.reply("Invalid number");

我希望将用户的电源设置为 0、1、2、3、4 或 5,仅此而已。所以我想检查我是否args[1]包含这些数字之一并且我的代码不起作用。

我试图只在我的上面加上“1”powerPossibilities并且它可以工作,所以问题不在于args. 我只是不确定如何设置可能性列表。

标签: javascriptdiscorddiscord.js

解决方案


问题在于您的powerPossibilities声明的语法。

如果你说const val = foo || bar, then valwill be foo, 除非foo是 undefined , then valwill be bar. 你想要一些不同的东西。


您可以通过放入以下来实现powerPossibilitiesarray

const powerPossibilities = ["0", "1", "2", "3", "4", "5"];

然后像这样检查它:

if (!powerPossibilities.includes(powertoset)) {
  return message.reply("Invalid number");
}

推荐阅读