From 218934fa2ed1c702a6d3923d2aa2cc6b43c48684 Mon Sep 17 00:00:00 2001 From: Peter Bengtsson Date: Tue, 8 Dec 2020 14:43:23 -0500 Subject: initial commit --- .../reference/statements/if...else/index.html | 173 +++++++++++++++++++++ 1 file changed, 173 insertions(+) create mode 100644 files/uk/web/javascript/reference/statements/if...else/index.html (limited to 'files/uk/web/javascript/reference/statements/if...else/index.html') diff --git a/files/uk/web/javascript/reference/statements/if...else/index.html b/files/uk/web/javascript/reference/statements/if...else/index.html new file mode 100644 index 0000000000..bee07d07bf --- /dev/null +++ b/files/uk/web/javascript/reference/statements/if...else/index.html @@ -0,0 +1,173 @@ +--- +title: if...else +slug: Web/JavaScript/Reference/Statements/if...else +tags: + - JavaScript + - else + - if + - Оператор +translation_of: Web/JavaScript/Reference/Statements/if...else +--- +
{{jsSidebar("Statements")}}
+ +

Умовний оператор if виконує команду, якщо вказана умова є {{Glossary("truthy", "правдивою")}}. Якщо умова є {{Glossary("falsy", "хибною")}}, може бути виконана інша команда.

+ +
{{EmbedInteractiveExample("pages/js/statement-ifelse.html")}}
+ + + +

Синтаксис

+ +
if (condition)
+   statement1
+[else
+   statement2]
+
+ +
+
condition
+
Вираз, який вважається або {{Glossary("truthy", "правдивим")}}, або {{Glossary("falsy", "хибним")}}.
+
+ +
+
statement1
+
Команда, що виконується, якщо умова є {{Glossary("truthy", "правдивою")}}. Може бути будь-яка команда, в тому числі вкладені оператори if. Для виконання кількох команд використовуйте блок ({ ... }), щоб згрупувати ці команди. Щоб не виконувати жодних команд, використайте порожній оператор.
+
+ +
+
statement2
+
Команда, що виконується, якщо умова є {{Glossary("falsy", "хибною")}} та присутній блок else. Може бути будь-яка команда, в тому числі блок команд та вкладені оператори if.
+
+ +

Опис

+ +

Можна додавати вкладені вирази if...else для створення конструкції else if. Зауважте, що у JavaScript не існує ключового слова elseif (одним словом).

+ +
if (condition1)
+  statement1
+else if (condition2)
+  statement2
+else if (condition3)
+  statement3
+...
+else
+  statementN
+
+ +

Щоб побачити, як це працює, ось так це виглядає з правильно оформленими відступами:

+ +
if (condition1)
+  statement1
+else
+  if (condition2)
+    statement2
+  else
+    if (condition3)
+...
+
+ +

Щоб виконати декілька команд, використовуйте позначення блоку ({ ... }), щоб згрупувати ці команди. Взагалі, гарною практикою вважається завжди використовувати блочні вирази, особливо у коді, який містить вкладені оператори if:

+ +
if (condition) {
+  statements1
+} else {
+  statements2
+}
+
+ +

Не плутайте примітивні булеві значення true та false з правдивістю та хибністю об'єкта {{jsxref("Global_Objects/Boolean", "Boolean")}}. Будь-яке значення, яке не є false, undefined, null, 0, -0, NaN, або порожнім текстовим рядком (""), і будь-який об'єкт, в тому числі об'єкт Boolean, чиє значення дорівнює false, вважається {{Glossary("truthy", "правдивим")}} при використанні у якості умови. Для прикладу:

+ +
var b = new Boolean(false);
+if (b) // ця умова є правдивою
+
+ +

Приклади

+ +

Використання if...else

+ +
if (cipher_char === from_char) {
+  result = result + to_char;
+  x++;
+} else {
+  result = result + clear_char;
+}
+
+ +

Використання else if

+ +

Зауважте, що у JavaScript немає оператора elseif. Однак, ви можете його записати з пробілом між else та if:

+ +
if (x > 50) {
+  /* зробити що треба */
+} else if (x > 5) {
+  /* зробити що треба */
+} else {
+  /* зробити що треба */
+}
+ +

Присвоєння всередині умовного виразу

+ +

Не рекомендовано використовувати прості присвоєння в умовному виразі, тому що присвоєння можна переплутати з порівнянням при швидкому перегляді коду. Наприклад, не використовуйте наступний код:

+ +
if (x = y) {
+  /* зробити що треба */
+}
+
+ +

Якщо вам потрібно використати присвоєння в умовному виразі, загальноприйнятим є використання додаткових дужок навколо присвоєння. Наприклад:

+ +
if ((x = y)) {
+  /* зробити що треба */
+}
+
+ +

Специфікації

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
СпецифікаціяСтатусКоментар
{{SpecName('ESDraft', '#sec-if-statement', 'if statement')}}{{Spec2('ESDraft')}}
{{SpecName('ES6', '#sec-if-statement', 'if statement')}}{{Spec2('ES6')}}
{{SpecName('ES5.1', '#sec-12.5', 'if statement')}}{{Spec2('ES5.1')}}
{{SpecName('ES3', '#sec-12.5', 'if statement')}}{{Spec2('ES3')}}
{{SpecName('ES1', '#sec-12.5', 'if statement')}}{{Spec2('ES1')}}Початкове визначення
+ +

Сумісність з веб-переглядачами

+ + + +

{{Compat("javascript.statements.if_else")}}

+ +

Див. також

+ + -- cgit v1.2.3-54-g00ecf