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… elseizjavu za stvaranje programa koji može donositi odluke.
U JavaScriptu postoje tri oblika if… elseizjave.
- ako izjava
- if … else izjava
- if … else if … else izjava
JavaScript if Statement
Sintaksa ifizjave je:
if (condition) ( // the body of if )
ifIzjavu ocjenjuje stanje unutar zagrada ().
- Ako se uvjet procijeni
true,ifizvršava se kôd unutar tijela . - Ako se stanje procijeni
false,ifpreskače se kôd unutar tijela .
Napomena: Kôd iznutra ( )je tijelo ifizjave.
Rad 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> 0procjenjuje na true. I, tijelo ifizjave se izvršava.
Izlaz 2
Unesite broj: -1 Izjava if jednostavna je
Pretpostavimo da je korisnik upisao -1 . U ovom slučaju, stanje number> 0procjenjuje na false. Stoga se tijelo ifizjave preskače.
Budući da console.log("The if statement is easy");je izvan tijela ifizjave, 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
ifIzjava može imati dodatnu elseklauzulu. Sintaksa if… elseizjave je:
if (condition) ( // block of code if condition is true ) else ( // block of code if condition is false )
if… elseIzjavu ocjenjuje stanje unutar zagrada.
Ako se stanje procijeni na true,
ifizvršava se kôd unutar tijela- kôd unutar tijela
elsepreskače se iz izvršenja
Ako se stanje procijeni na false,
elseizvršava se kôd unutar tijela- kôd unutar tijela
ifpreskače se iz izvršenja
Obrada izjave if … else
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> 0procjenjuje na true. Stoga se tijelo ifizjave izvršava, a tijelo elseizjave 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> 0procjenjuje na false. Stoga se tijelo elseizjave izvršava, a tijelo ifizjave preskače.
JavaScript ako … inače if izjava
if… elseIzjava 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… elsemože se koristiti.
Sintaksa if… else if… elseizjave 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
trueje kod blok 2 je pogubljen. - Ako CONDITION2 je
falseje kod blok 3 izvršava.
- Ako CONDITION2 je
Rad izraza if … else if … else
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> 0izračunava na false. Zatim se drugi testni uvjet number == 0procjenjuje na truei izvršava se njegov odgovarajući blok.
Ugnježđena izjava if … else
Također možete koristiti if… elseizjavu unutar if… elseizjave. 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… elseizjavu. 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, switchmože se koristiti izjava. Da biste saznali više, posjetite JavaScript prekidač.








