Как проверить, содержит ли строка указанный номер c - PullRequest
0 голосов
/ 19 апреля 2020

Я делаю систему питания для своего бота 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. Я просто не уверен, как настроить список возможностей.

1 Ответ

2 голосов
/ 19 апреля 2020

Проблема заключается в синтаксисе вашей powerPossibilities декларации.

Если вы скажете const val = foo || bar, тогда val будет foo, если foo не определено, тогда val будет bar. Вы хотите что-то другое.


Вы можете реализовать это следующим образом, поместив powerPossibilities в array:

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

Затем отметьте это следующим образом:

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