Всем привет, с вами автор блога scriptcoding.ru. В этой статье мы подробно рассмотрим операторы языка программирования Jscript, описание, применения и синтаксис. В том числе и условный оператор if js языка.
В отличии от языка VBScript, язык JScript более гибок, и его синтаксис практически тот же, что в C++, он, более «профессиональный«, и поэтому, для новичка он может показаться запутанным. Ну, ничего, что бы не смешивать описание JScript операторов, мы разобьём всё по полочкам, сначала, рассмотрим условный оператор js if else, а затем и все остальные (логические, арифметические и так далее), я приведу примеры программного кода с их использованием.
Условный оператор IF … ELSE JS
Данная конструкция применяется для проверки условия, если оно выполняется (условие идёт после ключевого слова if), то идёт выполнение одного выражения, если нет – выполнение другого выражения. Сама конструкция может быть вложенной, начало и конец блока кода определяется фигурными скобками:
if (условие) {выражение_1} [else {выражение_2}]
Логические типы true и false
Как и в остальных языках программирования, true – означает ИСТИНА, false – ЛОЖЬ, как правило, эквивалентом true является 1, а false соответствует 0. Но, в описании JScript это немного не так.
Арифметические операторы
Бинарные (арифметические) применяются для операции над двумя операндами:
- — — Вычитание
- / — Деление
- + -Сложение
- % — Вычисление остатка от деления
- * — Умножение
Операции инкремента и декремента
- ++ (два плюса) – Операция инкремента, позволяет увеличить число на единицу. Можно использовать как префикс (++i) или как суффикс (++i).
- — (два минуса) – Операция декремента, позволяет уменьшить число на единицу. Можно использовать как префикс (—i) или как суффикс (i—).
- += — Увеличение числа за счёт сложения.
- -= — Уменьшение числа за счёт вычитания.
- *= — Увеличение числа за счёт умножения.
- /= — Увеличение числа за счёт деления.
- %= — Увеличение числа за счёт вычисление остатка от деления.
Хорошо, с теоретическими основами мы разобрались, теперь настало время приступить к программированию на языке JSCRIPT, помним, что скрипты выполняются под управление сервера Windows Script Host.
Давайте рассмотрим следующий программный код:
//***************************************** // инкремент и декремент // inc_dec_else_if.js //***************************************** var a=10, b=100, c=25, d=5, f=8; with(WScript){ a++; //11 --b; //99 Echo (a + "\t" + b); a+=15; //26 b-=20; //79 Echo (a + "\t" + b); // условный оператор js if d*=5; //25 f/=2; //4 Echo (d + "\t" + f); c%=3; //1 Echo (c); } |
В данном примере мы сначала объявляем четыре переменные с помощью ключевого слова var, и сразу присваиваем им числовые значения. Далее с помощью операторов инкремента и декремента мы меняем значения чисел. Информация выводится с помощью функции Echo (смотрите статью «Объект WScript — методы sleep, quit и echo и 8 свойств«). Что бы не писать лишний раз имя объекта, я использовал конструкцию with{}.
Логические операторы
Логические операторы используются при проверке условия, что бы не повторяться, я сделаю сокращение: левый операнд – Л.О., а правый операнд – П.О.
- && — Логическое «И»
- || — «ИЛИ»
- ! — «НЕ»
- > — Л.О. больше П.О.
- >= — Л.О. больше или равен П.О.
- < — Л.О. меньше П.О.
- <= — Л.О. меньше или равен П.О.
- == — Л.О. равен П.О.
- != — Л.О. не равен П.О.
- |= — Л.О. равен себе ИЛИ П.О.
- &= — Л.О. равен себе И П.О.
- ^= — ИСКЛЮЧАЮЩЕЕ ИЛИ
Теперь рассмотрим следующий скрипт:
//***************************************** // логические операции // logik_if_else.js //***************************************** var a=10, b=100, WshShell, title, msg1, msg2, msg3, msg4, vbInformation = 64; // Создаем экземпляр класса WScript.Shell WshShell = WScript.CreateObject("WScript.Shell"); title = "Работа с условным оператором IF ELSE JS"; with(WshShell){ if (a>=5 && a<=100) //истина msg1 = "TRUE"; else msg1 = "FALSE"; Popup (msg1, 5, title, vbInformation); if (a>=5 || b==100) //истина msg2 = "TRUE"; else msg2 = "FALSE"; Popup (msg2, 5, title, vbInformation); //условный оператор js if else if (!a) //ложь msg3 = "TRUE"; else msg3 = "FALSE"; Popup (msg3, 5, title, vbInformation); if (a&=100) //ложь msg4 = "TRUE"; else msg4 = "FALSE"; Popup (msg4, 5, title, vbInformation); } |
Как и в предыдущем скрипте, тут я использовал конструкцию with для сокращения программного кода. Однако, для вывода информация мы воспользовались функцией Popup (смотрите статью «Объект WScript.Shell метод Popup — создание диалогового окна«). В результате, диалоговые окна закроются автоматически через несколько секунд. Обратите внимание, что в данном примере мы не использовали фигурные скобки в условном операторе js if, они актуальны только тогда, когда нужно выполнить не одну строку кода, а несколько.
Напоследок, давайте рассмотрим такой практический пример, как решение квадратного уравнения:
// *********************************************************** // Решение квадратного уравнения // uravnenije_if_else.js // *********************************************************** var a,b,c,d,x,x1,x2; //Объявляем переменные a=-2; b=6; c=20; //Идет поиск дискриминанта d=Math.pow(b,2)-4*a*c; if (d==0){ x=b/(2*a); msg="Уравнение имеет одно решение, x ровно " + x }else{ if (d>0){ x1=(-b+Math.sqrt(d))/(2*a); x2=(-b-Math.sqrt(d))/(2*a); msg="Уравнение имеет два решения \nx1 ровно " + x1 + "\nx2 ровно " + x2; // условный оператор if else js }else msg="Решения нет"; } WScript.Echo(msg); |
Как видно, тут сначала идёт нахождение дискриминанта, далее идёт проверка условия, сначала проверяется, не равен ли дискриминант 0, затем идёт вложенный условный оператор if else js, где уже идёт проверка: не является ли дискриминант больше 0.