U ovom vodiču naučit ćete o izjavi if … else za stvaranje programa donošenja odluka uz pomoć primjera.
U računalnom programiranju mogu se pojaviti situacije u kojima morate pokrenuti blok koda među više od jedne alternative. Na primjer, dodjeljivanje ocjena A , B ili C na temelju ocjena koje je student stekao.
U takvim situacijama možete koristiti JavaScript if… else
izjavu za stvaranje programa koji može donositi odluke.
U JavaScriptu postoje tri oblika if… else
izjave.
- ako izjava
- if … else izjava
- if … else if … else izjava
JavaScript if Statement
Sintaksa if
izjave je:
if (condition) ( // the body of if )
if
Izjavu ocjenjuje stanje unutar zagrada ()
.
- Ako se uvjet procijeni
true
,if
izvršava se kôd unutar tijela . - Ako se stanje procijeni
false
,if
preskače se kôd unutar tijela .
Napomena: Kôd iznutra ( )
je tijelo if
izjave.

Primjer 1: ako Izjava
// 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");
Izlaz 1
Unesite broj: 2 Broj je pozitivan Ako je iskaz jednostavan
Pretpostavimo da je korisnik upisao 2 . U ovom slučaju, stanje number> 0
procjenjuje na true
. I, tijelo if
izjave se izvršava.
Izlaz 2
Unesite broj: -1 Izjava if jednostavna je
Pretpostavimo da je korisnik upisao -1 . U ovom slučaju, stanje number> 0
procjenjuje na false
. Stoga se tijelo if
izjave preskače.
Budući da console.log("The if statement is easy");
je izvan tijela if
izjave, uvijek se izvršava.
Usporedni i logički operatori koriste se u uvjetima. Dakle, da biste saznali više o usporedbi i logičkim operatorima, možete posjetiti JavaScript usporedbu i logičke operatore.
Izjava JavaScript ako … drugo
if
Izjava može imati dodatnu else
klauzulu. Sintaksa if… else
izjave je:
if (condition) ( // block of code if condition is true ) else ( // block of code if condition is false )
if… else
Izjavu ocjenjuje stanje unutar zagrada.
Ako se stanje procijeni na true
,
if
izvršava se kôd unutar tijela- kôd unutar tijela
else
preskače se iz izvršenja
Ako se stanje procijeni na false
,
else
izvršava se kôd unutar tijela- kôd unutar tijela
if
preskače se iz izvršenja

Primjer 2: if … else Izjava
// 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");
Izlaz 1
Unesite broj: 2 Broj je pozitivan Izjava if … else je jednostavna
Pretpostavimo da je korisnik upisao 2 . U ovom slučaju, stanje number> 0
procjenjuje na true
. Stoga se tijelo if
izjave izvršava, a tijelo else
izjave preskače.
Izlaz 2
Unesite broj: -1 Broj je negativan broj ili 0 Izraz if … else jednostavan je
Pretpostavimo da je korisnik upisao -1 . U ovom slučaju, stanje number> 0
procjenjuje na false
. Stoga se tijelo else
izjave izvršava, a tijelo if
izjave preskače.
JavaScript ako … inače if izjava
if… else
Izjava se koristi za izvršenje blok koda među dvije alternative. Međutim, ako trebate odabrati između više od dvije mogućnosti, if… else if… else
može se koristiti.
Sintaksa if… else if… else
izjave je:
if (condition1) ( // code block 1 ) else if (condition2)( // code block 2 ) else ( // code block 3 )
- Ako uvjet1 procijeni na
true
, izvršava se blok koda 1 . - Ako CONDITION1 ocjenjuje da
false
, onda CONDITION2 se ocjenjuje.- Ako CONDITION2 je
true
je kod blok 2 je pogubljen. - Ako CONDITION2 je
false
je kod blok 3 izvršava.
- Ako CONDITION2 je

Primjer 3: ako … inače ako Izjava
// 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");
Izlaz
Unesite broj: 0 Broj je 0 Izjava if … else if … else je jednostavna
Pretpostavimo da je korisnik upisao 0 , a zatim prvi testni uvjet number> 0
izračunava na false
. Zatim se drugi testni uvjet number == 0
procjenjuje na true
i izvršava se njegov odgovarajući blok.
Ugnježđena izjava if … else
Također možete koristiti if… else
izjavu unutar if… else
izjave. Ovo je poznato kao ugniježđena if … else izjava.
Primjer 4: Ugnježđena izjava 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"); )
Izlaz
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
U određenim situacijama, ternarni operator može zamijeniti if… else
izjavu. Da biste saznali više, posjetite JavaScript Ternary Operator.
Ako trebate odabrati između više od jedne alternative na temelju određenog uvjeta ispitivanja, switch
može se koristiti izjava. Da biste saznali više, posjetite JavaScript prekidač.