IF (условие «Если»)
🔗 Оригинальная страница — Источник данного материала
IF (Если ... то ...)
Описание
Данный кубик один из основных логических экшенов, используемых в ZennoPoster. В своей работе он использует логику из JavaScript. Для сравнения используются логические операторы.
Например, в самом простом виде оператор if сравнивает между собой два значения. Если значение оператора верное, то кубик принимает значение True (выход по зелёной ветке), а если не верное, то False (выход по красной ветке).
В свойствах экшена есть поле ввода, куда можно вставить переменные проекта и окружения, а также константы. Кубик IF оперирует только двумя типами данных: числа и строки.
Для чего используется:
- Сравнить значения чисел;
- Сопоставить текстовые строки;
- Проверка условий.
Принцип работы
Пример №1
Рассмотрим простой пример для понимания этого оператора.

1. Создадим переменную value1 и присвоим ей значение 1.
2. Добавим кубик IF с помощью действий: Логика → If.
3. В поле свойств кубика вставим операнд: {-Variable.value1-}
4. Добавим оператор равно: ==
5. Вставим второе сравниваемое значение: константу 1.
6. Если теперь запустить кубик, то он завершится по зеленой линии (появится зеленая галочка). Потому что значение верное (True), так как переменная value1 равна 1.
7. А вот если заменить значение переменной на 2, то кубик завершится по красной линии (появится красный крестик). Так как значение не верное (False).
В этом примере мы использовали числовые данные и оператор сравнения ==. А в следующем познакомимся с оператором Не равно: !=
Пример №2
Для текстовых данных и переменных нужны обязательно (одинарные или двойные). А вот для чисел наоборот не нужны. Иначе сравнение будет работать некорректно.

1. Создадим переменную value1 и присвоим ей значение “Hello World“.
2. Добавим кубик IF с помощью действий: Логика → If.
3. В поле свойств кубика вставим операнд: {-Variable.value1-}
4. Добавим оператор не равно: !=
5. Вставим второе сравниваемое значение: константу “Hello World“.
6. Если теперь запустить кубик, то он завершится по красной линии. Потому что значение ошибочное (False), так как переменные равны (а у нас оператор Не равно).
7. Когда мы поменяем значение переменной value1 на “Goodbye World“ и повторим кубик, то действие уже завершится по зеленой линии (True).
Пример №3
Сравнение можно также использовать для проверки того, загрузился ли на странице хоть какой-то текст.

1. Проверяем переменную окружения {-Page.Text-} на пустоту.
2. Если на странице нет текста (она пустая), то кубик выйдет по зеленой ветке (True).
3. Тогда можно перезагрузить страницу или поставить дополнительную паузу, ожидая подгрузки страницы.
Также кубик IF часто используется в циклах со счетчиком для сравнения с каким-либо максимальным значением.