JavaScript - if/else uslovi


Uslovne izjave u JavaScripta

Kao i mnogi drugi programski jezici, JavaScript vam takođe omogućava pisanje koda koji izvodi različite radnje na temelju rezultata logičkih ili komparativnih uvslova testiranja u toku rada. To znači da možete stvoriti ispitne uslove u obliku izraza koji se procjenjuju istinitim (true) ili lažnim (false) i na temelju tih rezultata možete izvesti određene radnje. U JavaScriptu postoji nekoliko uslova izjava koje možete koristiti za donošenje odluka:

  • Izjava if
  • Izjava if ... else
  • Izjava if ... else if .... else
  • Izjava o slučaju prekidača (switch)

Svaku od ovih izjava detaljno ćemo naučiti u nastavku kursa.



Izjava if

Izjava if koristi se za izvršavanje bloka koda samo ako je navedeni uslov ocijenjen istinitim (true). Ovo su najjednostavnije JavaScript uslov izjave i mogu se napisati kao:

if(condition) {
    // Kod koji se treba izvršiti
}

Sljedeći primjer će prikazati "Prijatan vikend!" ako je tekući dan petak:

var now = new Date();
var dayOfWeek = now.getDay(); // Nedelja - Subota  : 0 - 6

if(dayOfWeek == 5) {
    alert("Prijatan vikend!");
}
Pogledajmo kako koristiti primjer u praksi:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <title>JavaScript If izjave</title>
</head>
<body>
    <script>
    var now = new Date();
    var dayOfWeek = now.getDay(); // Nedelja - Subota  : 0 - 6

    if(dayOfWeek == 5) {
        alert("Prijatan vikend!");
    }
    </script>
</body>
</html>


If/else uslovi

Možete poboljšati mogućnosti donošenja odluka svog JavaScript programa pružanjem alternativnog izbora dodavanjem izjave else u izjavu if. Izjava if ... else omogućava vam izvršavanje jednog bloka koda ako je navedeni uslov ocijenjen istinitim, a drugi blok koda ako je ocijenjen lažno. Može se napisati ovako:

if(condition) {
    // Kod koji se izvršava je istinit
} else {
    // Kod koji se izvršava je neistinit
}

JavaScript kod u sljedećem primjeru ispisat će "Prijatan vikend!" ako je tekući dan petak, u suprotnom će se objaviti tekst "Ugodan dan!".

var now = new Date();
var dayOfWeek = now.getDay(); // Nedelja - Subota : 0 - 6

if(dayOfWeek == 5) {
    alert("Prijatan vikend!");
} else {
    alert("Ugodan dan!");
}
Pogledajmo kako koristiti primjer u praksi:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <title>JavaScript If-Else izjave</title>
</head>
<body>
    <script>
    var now = new Date();
    var dayOfWeek = now.getDay(); // Nedelja - Subota : 0 - 6

    if(dayOfWeek == 5) {
        alert("Prijatan vikend!");
    } else {
        alert("Ugodan dan!");
    }
    </script>
</body>
</html>


Izjava if/else if/else

Izjava if/else if/else poseban izraz koji se koristi za kombinaciju više if/else izjava.

if(condition1) {
    // Kod je istinit
} else if(condition2) {
    // Kod koji se izvršava ako je uslov1 neistinit, a uslov2 istinit
} else {
    // Kod koji se izvršava ako su i uslov1 i uslov2 neistiniti
}

Sljedeći primjer će prikazati "Prijatan vikend!" ako je tekući dan petak, i "Lijepu nedelju!" ako je tekući dan nedelja, u suprotnom će se prikazati "Ugodan dan!"

var now = new Date();
var dayOfWeek = now.getDay(); // Nedelja - Subota : 0 - 6

if(dayOfWeek == 5) {
    alert("Prijatan vikend!");
} else if(dayOfWeek == 0) {
    alert("Lijepu nedelju!");
} else {
    alert("Ugodan dan!");
}
Pogledajmo kako koristiti primjer u praksi:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <title>JavaScript Višestruke If Else izjave</title>
</head>
<body>
    <script>
    var now = new Date();
    var dayOfWeek = now.getDay(); // Nedelja - Subota : 0 - 6

    if(dayOfWeek == 5) {
        alert("Prijatan vikend!");
    } else if(dayOfWeek == 0) {
        alert("Lijepu nedelju!");
    } else {
        alert("Ugodan dan!");
    }
    </script>
</body>
</html>


Ternarni operator

Ternarni operator pruža kratki način pisanja izjava if ... else. Ternarni operator predstavljen je simbolom upitnika (?) i potrebno je tri operanda: uslov za provjeru, rezultat za true i rezultat za false. Njegova osnovna sintaksa je:

var result = (condition) ? value1 : value2

Ako je uslov ocijenjen istinitim, value1 će se vratiti, u suprotnom će se vratiti value2. Da biste razumjeli kako ovaj operator radi, uzmite u obzir sljedeće primjere:

var userType;
var age = 21;
if(age < 18) {
    userType = 'Dijete';
} else {
    userType = 'Odrasli';
}
alert(userType); // Ispisuje Odrasli
Pogledajmo kako koristiti primjer u praksi:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <title>JavaScript Tipična uslovna izjava</title>
</head>
<body>
    <script>
   var userType;
   var age = 21;
    if(age < 18) {
        userType = 'Dijete';
    } else {
        userType = 'Odrasli';
    }
    alert(userType); // Ispisuje Odrasli
    </script>
</body>
</html>

Pomoću ternarnog operatera isti se kod može napisati na kompaktniji način:

var age = 21;
var userType = age < 18 ? 'Dijete' : 'Odrasli';
alert(userType); // Ispisuje Odrasli

Kao što možete vidjeti u gornjem primjeru, budući da je navedeni uslov procijenjen na lažnu vrijednost na desnoj strani dvotačka (:) vraća se string 'Odrasli'.