Подтвердить что ты не робот

Если число заканчивается 1, сделайте что-нибудь

Я хочу сделать что-то вроде этого:

if(day==1 || day==11 || day==21 || day==31 || day==41 ......){
    result="dan";
}
else{
    result="dana";
}

Как я могу это сделать с каждым числом, которое заканчивается одним и, конечно, без написания всех чисел?

4b9b3361

Ответ 1

Просто проверьте остаток деления на 10:

if (day % 10 == 1) { 
  result = "dan";
} else {
  result = "dana";
}

% - это оператор "Модуло" или "Модуль", если вы не используете JavaScript, и в этом случае это простой оператор остатка (не истинный modulo). Он делит два числа и возвращает остаток.

Ответ 2

Вы можете проверить оставшуюся часть деления на 10 с помощью оператора Модуля.

if (day % 10 == 1)
{ 
   result = "dan";
}
else
{
   result = "dana";
}

Или если вы хотите избежать нормального if:

result = "dan" + (day % 10 == 1 ? "" : "a");

% - это оператор модуля JavaScript. Это дает вам остаток от деления:

Пример:

11 / 10 = 1 with remainder 1.
21 / 10 = 2 with remainder 1.
31 / 10 = 3 with remainder 1.
...

См. этот ответ: Что делает% в JavaScript? для подробного объяснения того, что делает оператор.

Ответ 3

Оператор модуля. Вы можете исследовать его, но в основном вы хотите определить, имеет ли число, деленное на 10, остаток 1:

if( day%10 == 1)

Ответ 4

это можно решить одной строкой

return (day % 10 == 1) ? 'dan' : 'dana';