W tym samouczku nauczysz się na przykładach instrukcji if… else do tworzenia programów decyzyjnych.
W programowaniu komputerowym mogą wystąpić sytuacje, w których trzeba będzie uruchomić blok kodu spośród więcej niż jednej alternatywy. Na przykład wystawianie ocen A , B lub C na podstawie ocen uzyskanych przez ucznia.
W takich sytuacjach można użyć instrukcji JavaScript if… else
do stworzenia programu, który może podejmować decyzje.
W JavaScript istnieją trzy formy if… else
instrukcji.
- jeśli oświadczenie
- if… else oświadczenie
- if… else if… else oświadczenie
JavaScript if Instrukcja
Składnia if
instrukcji to:
if (condition) ( // the body of if )
if
Sprawozdanie ocenia stan wewnątrz nawiasu ()
.
- Jeśli warunek jest oceniany na
true
, wykonywany jest kod wewnątrz treściif
. - Jeśli warunek jest oceniany na
false
, kod wewnątrz treściif
jest pomijany.
Uwaga: kod wewnątrz ( )
jest treścią if
instrukcji.

Przykład 1: if Instrukcja
// check if the number is positive const number = prompt("Enter a number: "); // check if number is greater than 0 if (number> 0) ( // the body of the if statement console.log("The number is positive"); ) console.log("The if statement is easy");
Wyjście 1
Wpisz liczbę: 2 Liczba jest dodatnia. Instrukcja if jest łatwa
Załóżmy, że użytkownik wprowadził 2 . W tym przypadku warunek ma number> 0
wartość true
. Treść if
instrukcji jest wykonywana.
Wyjście 2
Wpisz liczbę: -1 Instrukcja if jest łatwa
Załóżmy, że użytkownik wprowadził -1 . W tym przypadku warunek ma number> 0
wartość false
. W związku z tym if
treść instrukcji jest pomijana.
Ponieważ console.log("The if statement is easy");
znajduje się poza treścią if
instrukcji, jest zawsze wykonywana.
W warunkach używane są operatory porównania i logiczne. Aby dowiedzieć się więcej o porównaniu i operatorach logicznych, odwiedź stronę Porównanie JavaScript i operatory logiczne.
JavaScript if… else oświadczenie
if
Stwierdzenie może mieć opcjonalnej else
klauzuli. Składnia if… else
instrukcji to:
if (condition) ( // block of code if condition is true ) else ( // block of code if condition is false )
if… else
Sprawozdanie ocenia stan wewnątrz nawiasu.
Jeśli warunek jest oceniany jako true
,
- kod wewnątrz korpusu
if
jest wykonywany - kod wewnątrz treści
else
jest pomijany podczas wykonywania
Jeśli warunek jest oceniany jako false
,
- kod wewnątrz korpusu
else
jest wykonywany - kod wewnątrz treści
if
jest pomijany podczas wykonywania

Przykład 2: if… else Instrukcja
// check is the number is positive or negative/zero const number = prompt("Enter a number: "); // check if number is greater than 0 if (number> 0) ( console.log("The number is positive"); ) // if number is not greater than 0 else ( console.log("The number is either a negative number or 0"); ) console.log("The if… else statement is easy");
Wyjście 1
Wprowadź liczbę: 2 Liczba jest dodatnia. Instrukcja if… else jest łatwa
Załóżmy, że użytkownik wprowadził 2 . W tym przypadku warunek ma number> 0
wartość true
. Stąd treść if
instrukcji jest wykonywana, a treść else
instrukcji jest pomijana.
Wyjście 2
Wprowadź liczbę: -1 Liczba jest liczbą ujemną lub 0 Instrukcja if… else jest łatwa
Załóżmy, że użytkownik wprowadził -1 . W tym przypadku warunek ma number> 0
wartość false
. Stąd treść else
instrukcji jest wykonywana, a treść if
instrukcji jest pomijana.
JavaScript if… else if instrukcja
if… else
Zestawienie służy do wykonywania blok kodu między dwiema alternatywami. Jeśli jednak musisz dokonać wyboru między więcej niż dwiema alternatywami, if… else if… else
możesz użyć.
Składnia if… else if… else
instrukcji to:
if (condition1) ( // code block 1 ) else if (condition2)( // code block 2 ) else ( // code block 3 )
- Jeśli wynik warunku1 wyniesie
true
, blok kodu 1 jest wykonywany. - Jeśli warunek1 ocenia się
false
, a następnie warunek2 jest oceniany.- Jeśli warunek 2 jest spełniony
true
, blok kodu 2 jest wykonywany. - Jeśli warunek 2 jest spełniony
false
, blok kodu 3 jest wykonywany.
- Jeśli warunek 2 jest spełniony

Przykład 3: if… else if Statement
// check if the number if positive, negative or zero const number = prompt("Enter a number: "); // check if number is greater than 0 if (number> 0) ( console.log("The number is positive"); ) // check if number is 0 else if (number == 0) ( console.log("The number is 0"); ) // if number is neither greater than 0, nor zero else ( console.log("The number is negative"); ) console.log("The if… else if… else statement is easy");
Wynik
Wpisz liczbę: 0 Liczba to 0 Instrukcja if… else if… else jest łatwa
Załóżmy, że użytkownik wprowadził 0 , a następnie pierwszy warunek testu zostanie number> 0
oceniony jako false
. Następnie drugi warunek testowy jest number == 0
oceniany true
i wykonywany jest odpowiadający mu blok.
Zagnieżdżone if… else Instrukcja
Możesz również użyć if… else
instrukcji wewnątrz if… else
instrukcji. Jest to znane jako zagnieżdżona instrukcja if… else .
Przykład 4: zagnieżdżona instrukcja if… else
// check if the number is positive, negative or zero const number = prompt("Enter a number: "); if (number>= 0) ( if (number == 0) ( console.log("You entered number 0"); ) else ( console.log("You entered a positive number"); ) ) else ( console.log("You entered a negative number"); )
Wynik
Enter a number: 5 You entered a positive number
Suppose the user entered 5. In this case, the condition number>= 0
evaluates to true
, and the control of the program goes inside the outer if
statement.
Then, the test condition, number == 0
, of the inner if
statement is evaluated. Since it's false, the else
clause of the inner if
statement is executed.
Note: As you can see, nested if… else
makes our logic complicated and we should try to avoid using nested if… else
whenever possible.
Body of if… else With Only One Statement
If the body of if… else
has only one statement, we can omit ( )
in our programs. For example, you can replace
const number = 2; if (number> 0) ( console.log("The number is positive."); ) else ( console.log("The number is negative or zero."); )
with
const number = 2; if (number> 0) console.log("The number is positive."); else console.log("The number is negative or zero.");
Output
The number is positive.
More on Decision Making
W niektórych sytuacjach operator trójskładnikowy może zastąpić if… else
instrukcję. Aby dowiedzieć się więcej, odwiedź stronę Operator trójargumentowy JavaScript.
Jeśli musisz dokonać wyboru między więcej niż jedną alternatywą na podstawie danego warunku testu, switch
możesz użyć instrukcji. Aby dowiedzieć się więcej, odwiedź JavaScript switch.