Cu ajutorul instructiunilor conditionale putem face programele sa testeze diferite conditii dupa care sa decida datele care vor fi executate.
In Javacript sunt urmatoarele instructiuni conditionale:


Instructiunea if()

Sintaxa:
if(conditie){
 //Codul care va fi executat daca este adevarata conditia
}
- Unde 'conditie' poate fi orice expresie logica.
Daca rezultatul conditiei este TRUE se executa codul dintre acolade, in caz contrar, cand conditia returneaza FALSE, se trece peste acest cod.

- Exemplu, urmatorul script afiseaza "Buna ziua" daca ora este mai mare decat 11.
<script>
// daca ora > 11, va scrie in fereastra: Buna ziua
let ora = 12;
if(ora >11){
 document.write('<h4>Buna ziua!</4>');
}
</script>

Instructiunea if().. else

In exemplul anterior am vazut ca este afisat "Buna ziua" daca ora > 11, iar in caz contrar nu se intampla nimic.
Folosind instructiunea "if().. else" putem stabili comenzi care sa fie executate cand conditia instructiunii "if" este FALSE.

Sintaxa:

if(conditie){
 //codul care va fi executat daca este adevarata conditia
}
else {
 //codul care va fi executat daca conditia este falsa
}
- Unde 'conditie' poate fi orice expresie logica.
Daca rezultatul conditiei este TRUE se executa codul dintre primele acoladele, care apartin de "if", in caz contrar, cand conditia returneaza FALSE, sunt executate comenzile din a doua grupa de acolade (de la else).

- Iata un exemplu practic. Urmatorul script afiseaza "Buna ziua" daca ora este mai mare decat 11, in caz contrar afiseaza 'Este ora ...'
Se foloseste obiectul Date() care determina data si ora curenta (va fi explicat mai amanuntit in alta lectie).
<script>
// daca ora > 11, va scrie in fereastra: Buna ziua
// Alfel afiseaza: Este ora ...
var d = new Date();
let ora = d.getHours();
if(ora >11){
 document.write('<h4>Buna ziua</h4>');
}
else {
 document.write('<h4>Este ora '+ora+'</h4>');
}
</script>

Instructiunea else if()

Instructiunea else if() se adauga dupa if(), si inainte de 'else'.
Aceasta instructiune se foloseste pentru a verifica o alta conditie dupa 'if()', ca sa fie rulat un alt cod cand conditia de la 'if()' este FALSE, iar conditia de la else if() este TRUE (adevarata).

Sintaxa:
if(conditie_1){
 //codul care va fi executat daca este adevarata conditia
}
else if(conditie_2){
 //cod executat cand conditie_1 e FALSE iar conditie_2 e adevarata
}
else {
 //codul care va fi executat cand ambele: conditie_1 si conditie_2 sunt FALSE
}
- Unde 'conditie_1' si 'conditie_2' poate fi orice expresie logica.
Se evaluata intai 'conditie_1', daca rezultatul este TRUE se executa codul de la if(). Dar daca este FALSE, programul evalueaza urmatoarea conditie, de la else if() (conditie_2). Daca aceasta este adevarata se executa codul dintre acoladele ei, dar daca si aceasta e FALSE, sunt executate comenzile de la 'else'.

- Exemplu, urmatorul script afiseaza "Buna dimineata" daca ora este mai mare decat 5 si mai mica decat 11, in caz contrar, daca ora este intre 11 si 19 afiseaza "Buna ziua", altfel, afiseaza: 'Este ora ...'
<script>
//daca ora e intre 5 si 11, va scrie: Buna dimineata
//daca ora e intre 11 si 19, va scrie: Buna ziua
//Alfel afiseaza: Este ora ...
var d = new Date();
let ora = d.getHours();
if(ora >5 && ora <11){
 document.write('<h4>Buna dimineata</h4>');
}
else if(ora >=11 && ora <19){
 document.write('<h4>Buna ziua</h4>');
}
else {
 document.write('<h4>Este ora '+ora+'</h4>');
}
</script>

Dupa instructiunea if() se pot adauga mai multe serii de instructiuni else if(); iar 'else' este optional.


Instructiunea switch

Instructiune switch e folosita pentru a compara o valoare cu o lista de alte valori.
Sintaxa:

switch(expresie) {
case valoare1:
 cod executat daca expresie = valoare1
 break;
case valoare2:
 cod executat daca expresie = valoare2
 break;
case valoare3:
 cod executat daca expresie = valoare3
 break;
default :
 cod executat daca expresie e diferit de valoare1, valoare2 sau valoare3
}
- Prima data este evaluata expresia scrisa intre paranteze rotunde (de la switch()), apoi valoarea expresiei este comparata pe rand cu fiecare valoare de la 'case'. Daca se gaseste o identitate se executa codul asociat acelui 'case'. Apoi se iese din instructiunea "switch".
Daca, parcurgand fiecare "case", nu se gaseste nici o egalitate, se executa codul de la 'default'.
Prin folosirea lui 'break' se opreste parcurgerea corpului instructiunii atunci cand s-a gasit o valoare egala cu 'expresie' si se iese din "switch".

- Iata un exemplu de script care afiseaza un mesaj in functie de zilele saptamanii.
<script>
var d = new Date();
var ziua = d.getDay();
switch(ziua){
case 5:
 document.write('Astazi e vineri');
 break
case 6:
 document.write('Astazi e sambata');
 break
case 0:
 document.write('Astazi e duminica');
 break
default:
 document.write('Mai e pana sambata');
}
</script>
- Iata inca un exemplu cu "switch", de data aceasta foloseste valori de tip sir (string).
<script>
var nume ='Marius';
switch(nume){
case 'Cristi':
 document.write('Coleg');
 break
case 'Marius':
 document.write('Frate');
 break
case 'Maria':
 document.write('Sora');
 break
default:
 document.write('Altcineva');
}
</script>

Un Test simplu in fiecare zi

HTML
CSS
JavaScript
PHP-MySQL
Engleza
Spaniola
Care meta tag se foloseste pentru scurta descriere a paginii?
<meta content="..."> <meta description="..."> <meta http-equiv="...">
<meta name="description" content="70-160 caractere ce descriu continutul paginii" />
Ce proprietate CSS opreste efectul dat de "float"?
clear text-align position
#some_id {
  clear: both;
}
Clic pe metoda ce creaza un array cu toate elementele din pagina cu un anumit nume de tag.
getElementsByName() getElementById() getElementsByTagName()
var divs = document.getElementsByTagName("div");
var nr_divs = divs.length;
alert(nr_divs);
Indicati functia PHP ce returneaza numarul de elemente dintr-un array.
is_[) count() strlen()
$arr =[7, 8, "abc", 10);
$nri = count($arr);
echo $nri;        // 4
Indicati adverbul corespunzator adjectivului din paranteza in propozitia: "I live (happy)".
happly happily hapily
I live happily.
- Traiesc fericit (in mod fericit).
Indicati adverbul corespunzator adjectivului din paranteza in propozitia: "Vivo (feliz)".
felizamente felizmente felices
Vivo felizmente.
- Traiesc fericit (cu fericire).
Instructiuni conditionale if() else, switch

Last accessed pages

  1. Alphabet and Pronunciation - Alfabetul si pronuntia in limba engleza (22066)
  2. Gramatica limbii engleze - Prezentare Generala (72291)
  3. Prepozitii - Prepositions (7819)
  4. HTML5 - Elemente si atribute noi in formular (1341)
  5. HTML5 - Tag-uri Noi (1020)

Popular pages this month

  1. Gramatica limbii engleze - Prezentare Generala (2613)
  2. Cursuri si Tutoriale: Engleza, Spaniola, HTML, CSS, Php-Mysql, JavaScript, Ajax (1259)
  3. Prezentul simplu si continuu - Present Tense Simple and Continuous (827)
  4. Gramatica limbii spaniole. Indrumator si prezentare generala (807)
  5. Alphabet and Pronunciation - Alfabetul si pronuntia in limba engleza (744)