@Fire_track надо всего лишь составить нормальный селектор
Неправильно срабатывает IF
-
Подскажите пж, почему не срабатывает условие на картинке? Всю голову сломал. Далее IF и идёт на пропуск.
Дробные числа? Неправильная запись, типа скобок? Пробовал по разному, а самое интересное, что без переменной всё работает как надо, т.е. если я пропишу 160,53 > 80, то условие выполнится.

-
@Tacker-Donovan, не работает потому что вы сравниваете строку с числом.
@GhostZ said in Expression:
@kaget, "Получить текст" получает строку, а строка это не число. Строка + Строка = СтрокаСтрока. https://learn.javascript.ru/types-intro
@GhostZ said in Expression:
@kaget, Если в переменных нет лишних символов кроме чисел то просто оберните в Number()
Number([[TEMP1]]) + Number([[TEMP2]]) -
Обернуть не помогло. Но я разобрался: попробовал задать дробную int-переменную и понял, что запятая там не ставится - только точка. Как понимаю в этом и была проблема. Добавил строку замены запятой на точку в своём скрипте, протестил - вроде работает. В этом было дело?
-
@Tacker-Donovan, и в том что сравнивали строку с числом и в том что в строке была запятая а не точка
str = "160,53"; int = Number(str); // NaN, ошибкаstr = "160.53"; int = Number(str); // 160.53 -
-
Ещё вопрос по IF. Как в одном ифе уместить несколько условий?
Например есть такой IF:{{Resurs}} == "Odin"Нужно добавить ещё одно значение для того же ресурса. Знаю, что работает так:
{{Resurs}} == "Odin" | {{Resurs}} == "Dwa"Как можно сократить написание, типа {{Resurs}} == "Odin" | "Dwa", чтобы это работало?
-
@Tacker-Donovan, не сократить https://learn.javascript.ru/logical-ops
-
@Tacker-Donovan ... Ну тогда еще это https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Operator_Precedence
Приоретет оператора сравнения выше, чем логического или. Поэтому сначала выполнится
{{Resurs}} == "Odin" , а затем результат || "Dwa", но тк "Dwa" является строкой, то произойдет автоматическое преобразования типов и вернется true. А логический оператор || true всегда вернет true
