Declarație condiționată dacă altfel. Instrucțiuni condiționale în Javascript - Construcția IF-ELSE - Condiții în Javascript - Bazele Jquery if exemple de condiții

Instrucțiunile de control sunt instrucțiuni care controlează execuția codul programului. De obicei, codul de execuție dintr-o instrucțiune de control este numit corpul acelei instrucțiuni.

Instrucțiunile de control pot fi imbricate și pot fi utilizate și în interiorul altor instrucțiuni de control.

Instrucțiuni condiționate

În mod implicit, interpretul JavaScript execută instrucțiuni una după alta, în ordinea în care apar cod sursă. În cazurile în care executarea sau neexecutarea unor instrucțiuni trebuie să depindă de îndeplinirea sau neîndeplinirea unei anumite condiții, se folosesc instrucțiuni condiționate.

declarația dacă

Declarația if are două forme. Sintaxa primei forme:

Expresia din paranteze se numește condiție pentru executarea unei instrucțiuni if ​​sau condiție pe scurt. În primul rând, se calculează valoarea expresiei. Valoarea rezultată este convertită implicit într-un tip boolean dacă este necesar. Dacă rezultatul evaluării expresiei este adevărat, atunci instrucțiunea este executată. Dacă expresia returnează false , atunci instrucțiunea nu este executată:

Dacă (adevărat) alertă ("Finalizat!"); if (false) alert("Nu se va executa!");

Sintaxa if vă permite să executați o singură instrucțiune, dar dacă trebuie să executați mai multe instrucțiuni, trebuie să utilizați o instrucțiune compusă:

Dacă (adevărat) ( ​​var str = "Bună!"; alertă (str); )

Sintaxa formei a doua:

If (expresie) afirmație; declarație else;

Cuvântul cheie else vă permite să adăugați o instrucțiune care este executată dacă condiția este falsă:

Dacă (fals) alertă ("Eșuează"); else alert("Alerează");

După cum sa menționat deja, instrucțiunile de control pot fi imbricate, ceea ce vă permite să creați următoarele constructe:

Var num = 2; if (num == 1) ( alert("num value: " + num); ) else if (num == 2) ( alert ("num value: " + num); ) else ( alert("nu am cunoașteți acest număr!");)

Nu este nimic special la acest cod. Este pur și simplu o secvență de declarații, în care fiecare instrucțiune if este o parte else a instrucțiunii if anterioară. Această formă de notație poate să nu pară complet clară la prima vedere, așa că să luăm în considerare o formă echivalentă sintactic care arată imbricarea declarațiilor if:

Var num = 2; if (num == 1) ( alert("num value: " + num); ) else ( if (num == 2) ( alert ("num value: " + num); ) else ( alert("nu nu nu știu aceste numere!"); ))

În acest articol ne vom uita la operatorii condiționali și logici ai limbajului JavaScript.

Declarații condiționale JavaScript

Operatorii condiționali sunt operatori JavaScript (ECMAScript) care, în funcție de anumite condiții, permit executarea uneia sau mai multor instrucțiuni specifice.

Forme de declarații condiționate în JavaScript:

  • instrucțiunea if condiționată (cu o ramură);
  • declarație condiționată dacă...altfel (cu două ramuri);
  • declarație condiționată else if... (cu mai multe ramuri);
  • operator ternar (?: );
  • declarație de selecție a comutatorului.
Declarație condițională if

Sintaxa instrucțiunii if este:

If (condiție) declarație

Instrucțiunea condițională if constă din:

  • cuvânt cheie dacă ;
  • condiții (expresii în paranteze) care trebuie evaluate la adevărat sau fals (sau să fie turnate la una dintre aceste valori);
  • instrucțiuni care trebuie executate dacă condiția este adevărată sau se evaluează la adevărat.

De exemplu:

Dacă (adevărat) număr = 4;

Acest exemplu folosește true ca condiție. Aceasta înseamnă că numărul de instrucțiuni = 4 va fi întotdeauna executat. Acest exemplu Este dat pur și simplu pentru a explica principiul de funcționare al declarației if, deoarece este lipsit de orice sens.

De exemplu, să creștem valoarea variabilei voturi cu 1 dacă aceasta (tipul său) este un număr:

Dacă (tip de voturi === „număr”) voturi++;

Dacă trebuie executate mai multe instrucțiuni, acestea trebuie plasate între acolade:

Dacă (tip de voturi === "număr") ( voturi++; console.log ("Număr de voturi: " + voturi); )

Dacă (tip de voturi === „număr”) (voturi++; )

Dacă...altfel afirmație

Instrucțiunea if...else este folosită atunci când este necesar să se execute unele instrucțiuni dacă o condiție este adevărată, iar altele dacă este falsă.

Sintaxă:

If (condiție) ( una sau mai multe instrucțiuni (vor fi executate când condiția este adevărată sau este redusă la adevărată) ) else ( una sau mai multe instrucțiuni (vor fi executate când condiția este falsă sau este redusă la fals) )

De exemplu, să tipărim un mesaj pe consolă despre dacă numărul este par sau nu:

Dacă (numărul % 2) ( console.log ("Numărul este impar!"); ) else ( console.log ("Numărul este par!"); )

Regula pentru a aduce o condiție la adevărat sau fals

Dacă expresia în condiția unei declarații if nu este adevărată sau falsă, atunci JavaScript o va arunca la una dintre acele valori. Această acțiune o îndeplinește folosind așa-numita „regula minciunii”.

Sensul acestei reguli: orice expresie este adevărată, cu excepția următoarelor valori:

  • fals (fals);
  • "" sau "" (șir gol);
  • NaN (tip de date numerice speciale „nu un număr”);
  • 0 (număr „zero”);
  • null(valoare „goală”);
  • nedefinit (valoare „nedefinită”).

De exemplu, să afișăm un mesaj de bun venit în consola browserului, în funcție de ce valoare este stocată în variabila nameUser:

If (numeUtilizator) ( console.log ("Bună ziua, " + nume + "!"); ) else ( console.log ("Bună ziua, oaspete!"); )

Dacă variabila nameUser conține un șir gol, atunci, conform regulii minciunii, va fi turnată la valoarea false. În consecință, mesajul „Bună ziua, oaspete!” va fi imprimat pe consolă. .

Și dacă, de exemplu, variabila nameUser conține șirul „Timur”, atunci expresia din condiție va fi redusă la valoarea true. Ca rezultat, consola va afișa mesajul „Bună ziua, Timur!” .

else if... declarație (condiții multiple)

Sintaxă:

If (condiția 1) (instrucțiunile 1) else if (condiția 2) (instrucțiunile 2) else if (condiția 3) (instrucțiunile 3 //...) else if (condițiaN) (instrucțiunile N) else (instrucțiunile care vor fi executate dacă nici una dintre condiții nu este adevărată sau nu este redusă la această valoare)

Operator condiționat (ternar) (?:)

Operatorul ternar este un operator JavaScript care poate fi folosit atunci când trebuie să executați una dintre cele două expresii date bazate pe o condiție.

Sintaxă:

Stare? expresie1: expresie2

Operatorul ternar este format din trei operanzi care sunt separați prin simboluri? Și: . Condiția operatorului ternar este specificată în primul operand. Poate fi inclus și între paranteze. Dacă condiția este adevărată sau se va reduce la această valoare, expresia1 va fi executată, în caz contrar expresia 2 va fi executată.

De exemplu:

(număr > 10) ? console.log("Numărul este mai mare decât 10!"): console.log("Numărul este mai mic sau egal cu 10");

JavaScript permite mai mulți operatori ternari (?:):

Var dayNumber = data noua().getDay(); zi = (dayNumber === 0) ? „Duminică”: (dayNumber === 1) ? „Luni” : (dayNumber === 2) ? „Marți” : (dayNumber === 3) ? „Miercuri” : (dayNumber === 4) ? „Joi” : (dayNumber === 5) ? „Vineri”: (dayNumber === 6) ? „Sâmbătă” : „Ziua necunoscută a săptămânii”; console.log("Astăzi " + day.toLowerCase() + ".");

Exemplul de mai sus, dar folosind notația multiplă a instrucțiunii if...else:

Var dayNumber = data noua().getDay(); if (dayNumber === 0) (day = „Duminică”; ) else if (dayNumber === 1) (day = „Luni”; ) else if (dayNumber === 2) ( zi = „Marți”; ) else if (dayNumber === 3) ( day = "Miercuri"; ) else if (dayNumber === 4) ( day = "Joi"; ) else if (dayNumber === 5) ( zi = "Vineri"; ) else if (dayNumber === 6) ( day = „Sâmbătă”; ) else (day = „Ziua necunoscută a săptămânii”; ) console.log(„Astăzi „ + day.toLowerCase() + „.");

declarație switch

Declarația switch este concepută pentru a executa una dintre mai multe instrucțiuni în funcție de valoarea expresiei. Alegerea uneia sau alteia opțiuni este determinată de egalitatea strictă a rezultatului expresiei cu valoarea cazului (cazului).

Sintaxa instrucțiunii Switch:

Switch (expresie) (case value1: // ... instrucțiuni care vor fi executate dacă rezultatul evaluării expresiei este pauză „valoare1”; // instrucțiune opțională (dacă nu este utilizată, următoarea comandă din instrucțiunea switch va fi executată ) case value2: // ... instrucțiuni care vor fi executate dacă rezultatul evaluării expresiei este „valoare2” break // instrucțiune opțională (dacă nu este utilizată, următoarea comandă a operatorului comutator va fi executată) // .. . case valueN: // .. instrucțiuni care vor fi executate dacă rezultatul evaluării expresiei este „valueN” // instrucțiune opțională (dacă nu este utilizată, următoarea comandă a instrucțiunii switch) / instrucțiuni care vor fi executate dacă rezultatul expresiei nu este egal cu mai mult de una dintre valori)

Cuvântul cheie implicit este opțional. Este folosit atunci când trebuie să specificați instrucțiuni care trebuie executate dacă rezultatul unei expresii nu este egal cu nicio valoare a cazului (cazului).

Declarația break este opțională. Este conceput pentru a întrerupe execuția unei instrucțiuni switch și a transfera pentru a controla instrucțiunea care vine după aceasta.

De exemplu, să afișăm un mesaj în consola browserului despre numărul de bomboane:

Var countCandyBoys = 1, countCandyGirls = 2, mesaj; comutați (countCandyBoys + countCandyGirls) ( cazul 1: mesaj = „O bomboană”; pauză; cazul 2: cazul 3: mesaj = „Două sau trei bomboane”; pauză; cazul 4: mesaj = „Patru bomboane”; pauză; implicit: mesaj = "Nu una, nu două, nu trei sau patru bomboane" ) // imprimă un mesaj în consola console.log(message);

În exemplul de mai sus, expresia evaluată este 3. Prin urmare, mesajul = „Două sau trei bomboane” și instrucțiunile de pauză vor fi executate. Instrucțiunea break va întrerupe execuția ulterioară a instrucțiunii switch și va transfera controlul către instrucțiunea care vine după ea, de exemplu. console.log(mesaj) . Va afișa mesajul „Două sau trei bomboane” în consolă.

De exemplu, să afișăm ziua curentă a săptămânii în consolă:

Var ziua = ""; comutare(new Date().getDay()) (cazul 0: zi = „duminică”; pauză; caz 1: zi = „luni”; pauză; caz 2: zi = „marți”; pauză; caz 3: zi = "Miercuri"; caz 4: ziua = "Vineri";

Un exemplu care nu folosește instrucțiunea break:

Var rezultat = „succes”; comutare (rezultat) (case „succes”: console.log(„Succes!”); case „invalidCaptcha”: console.log(„Captcha nevalid!”); implicit: console.log(„Eroare!”); )

În acest exemplu, expresia declarației switch este de succes. Prin urmare, va fi executată instrucţiunea console.log("Succes!"), care va imprima mesajul "Success!"

la consolă. Dar, deoarece nu există nicio instrucțiune break după aceasta, execuția scriptului va continua în versiunea următoare. Astfel, instrucțiunile vor fi executate până când se întâlnește o pauză pe cale sau se ajunge la sfârșitul instrucțiunii switch. Ca rezultat al rulării acestui exemplu, vor fi transmise 3 mesaje către consolă: „Succes!” , „Captcha nevalid!”

și „Eroare!” .

În unele cazuri, acest comportament poate fi necesar, dar nu în acest caz. Aici s-a făcut pur și simplu o greșeală.

Exemplu corectat:

Var rezultat = „succes”; comutare (rezultat) (case „succes”: console.log(„Succes!”); break; case „invalidCaptcha”: console.log(„Captcha invalid!”); break; default: console.log(„Eroare!” )

  • Operatori logici
  • JavaScript face distincție între următorii operatori logici:
  • && - „ȘI” logic;

|| - „SAU” logic; ! -logic „NU”. Dacă în

expresie logică

Dacă expresia booleană operand1 && operand2 utilizează valori non-booleene, rezultatul expresiei va fi operand1 dacă poate fi turnat la false ; altfel rezultatul acestei expresii va fi operand2.

5 && 0 // 0 1 && 5 // 5 "line" && nedefinit // nedefinit "line1" && "line2" // "line2"

Dacă într-o expresie logică operand1 || operand2 folosește valori booleene, atunci rezultatul acestei expresii va fi adevărat dacă cel puțin una dintre ele este adevărată; în caz contrar, valoarea acestei expresii va fi falsă.

Fals || fals // fals adevărat || fals // adevărat fals || adevărat // adevărat adevărat || adevărat // adevărat

Dacă într-o expresie logică operand1 || operand2 utilizează valori non-booleene, rezultatul acestei expresii va fi operand1 dacă poate fi turnat la true ; altfel rezultatul acestei expresii va fi operand2.

5 || 0 // 5 1 || 5 // 1 „linie” || nedefinit // "șir" "șir1" || "line2" // "line1"

Expresia booleană!operand1 va fi evaluată la adevărat dacă operand1 este fals sau poate fi turnat la acea valoare; altfel rezultatul acestei expresii va fi fals .

False // adevărat !adevărat // fals !"șir" // fals !5 // fals"


Să începem să învățăm despre instrucțiunile condiționate în JavaScript. Aici ne vom uita la constructul If-Else. Tradusă în rusă, această condiție se citește ca Dacă-Atunci.

Dar înainte de a începe să vorbim despre condițiile din JavaScript, să ne uităm la cum și unde apar în viața reală.

De exemplu, dacă seara este senin, vom merge în parc.

dacă această mașină costă mai puțin de 1000 USD, atunci o voi cumpăra etc.

Astfel, așa cum probabil ați înțeles deja, condiția „Dacă” și consecința „Atunci” sunt întâlnite destul de des în viața noastră. Adică comportamentul nostru în diverse situații depinde în principal de anumite condiții.

Același lucru este valabil și pentru limbajele de programare. Au constructe speciale care vă permit să stabiliți anumite condiții și să efectuați acțiuni dacă condițiile specificate sunt îndeplinite sau nu.

Să încercăm să implementăm un exemplu simplu de utilizare a instrucțiunilor condiționate, sau mai degrabă construcția If-Else în JavaScript.

Mai întâi, să vedem cum funcționează instrucțiunea If în JavaScript.

Pentru a face acest lucru, mai jos vom da mai întâi un exemplu și apoi îl vom analiza.

var vreme = "senin" ; /* creează o variabilă pogoda și atribuie-i valoarea „clear” */

if(pogoda == "clear" ) /* creează o condiție: dacă pogoda este egal cu "clear" - TRUE*/

( /* Asta... */

document.write();

Familia mea și cu mine mergem seara în Parc

La ce ar trebui să fii atent în exemplul de mai sus?

În primul rând, pe semne egale == și atribuiri = în JavaScript. Ar trebui să se distingă: adică, mai întâi creăm o variabilă și îi atribuim o valoare. Apoi în condiția If vorbim despre egalitate.

În al doilea rând, atunci când vorbim despre îndeplinirea sau neîndeplinirea unei condiții închise între acolade (), ar trebui să se înțeleagă că limbajul JavaScript percepe condiția ca fiind adevărată sau falsă. Adică, dacă condiția este adevărată, ca în cazul nostru, atunci acțiunea cuprinsă între acolade () este efectuată.

Dacă condiția este False, ca în exemplul de mai jos, atunci condiția cuprinsă între acolade () nu va fi executată.

var vreme = "noros" ;

if(pogoda == "clear" ) /* acum condiția este FALS: pogoda nu este egal cu "clear" */

document .scrie („Eu și familia mea mergem seara în Parc” );

Așa funcționează operatorul condiționat If: dacă condiția este True, acțiunea este efectuată, dacă False, acțiunea nu va fi efectuată. Este simplu.

Acum să vorbim despre cum funcționează construcția If-Else în JavaScript. Altfel este tradus ca „Altfel”.

Să ne întoarcem din nou la viața reală. În cele mai multe cazuri, dacă este îndeplinită vreo condiție, atunci facem un lucru. Dacă nu este îndeplinită - „Altfel”, atunci facem altceva.

Să continuăm să lucrăm cu exemplele date mai devreme.

Dacă seara e senin, mergem în parc, altfel (daca este noros) vom sta acasa si ne uitam la televizor.

Sau dacă această mașină costă mai puțin de 1000 de dolari, atunci o voi cumpăra, altfel (daca costa mai mult) Voi pleca într-o excursie cu acești bani.

JavaScript are, de asemenea, această capacitate de a oferi o alternativă ( face altceva), dacă condiția nu este îndeplinită. În JavaScript, putem crea condiții similare folosind constructul If-Else. Să luăm un exemplu.

var vreme = "noros" ; /* atribuiți variabilei „pogoda” valoarea „noros” */

if(pogoda == „clear”) /* creează o condiție: dacă pogoda este egal cu „clear” - acesta este TRUE */

document .scrie („Eu și familia mea mergem seara în Parc” );

else /* altfel - dacă pogoda nu este egal cu "clar" - acesta este FALS */

{
document.write("

" + "Stăm acasă - ne uităm la televizor" );
}

Stăm acasă - ne uităm la televizor

Să ne uităm la exemplul dat.

Deci, dacă condiția este adevărată, atunci acțiunea care urmează instrucțiunii If, cuprinsă între acolade () este efectuată.

Dacă condiția este False, atunci se efectuează acțiunea care urmează instrucțiunii Else, de asemenea cuprinsă între acolade ().

Ne-am uitat la modul în care funcționează construcția If-Else simplă, dar des folosită în JavaScript. Și aici, pentru viitor, ar trebui spus că oricât de complexă ar fi condiția, ceea ce contează în primul rând este dacă este adevărată sau falsă.

Pentru a consolida materialul acoperit „Declarații condiționale în Javascript - Construcție IF-ELSE”, să ne uităm la un alt exemplu.

Abia acum folosim Condiție dacă-altfel când lucrezi cu numere.

var count = 10 ;

if(count = 3 ) /* creează o condiție: dacă numărul de elemente ale matricei prieteni este mai mare sau egal cu 3, atunci....*/

document .write("Acesta este un tablou mare cu cel puțin 3 elemente");

else /* altfel... */

{
document .write ("Acesta este un tablou mic cu mai puțin de 3 elemente");

Declarații condiționale

Instrucțiunile condiționate vă permit să săriți sau să executați alte instrucțiuni în funcție de valoarea unei expresii specificate. Aceste afirmații sunt puncte de decizie într-un program și sunt uneori numite și operatorii de sucursale.

Dacă vă imaginați că un program este un drum, iar interpretul JavaScript este un călător care merge de-a lungul acestuia, atunci declarațiile condiționate pot fi considerate ca o răscruce în care codul programului se ramifică în două sau mai multe drumuri, iar la astfel de răscruce, interpretul trebuie să aleagă care drum de urmat.

declarație dacă/altfel

Declarația if este o instrucțiune de control de bază care permite interpretului JavaScript să ia decizii sau să execute mai precis instrucțiuni, pe baza condițiilor. Declarația if are două forme. Primul:

if (expresie) enunţ

În această formă, expresia este mai întâi evaluată. Dacă rezultatul obținut este adevărat, atunci instrucțiunea este executată. Dacă expresia returnează false, atunci instrucțiunea nu este executată. De exemplu:

If (username == null) // Dacă variabila nume de utilizator este nulă sau nedefinită username = "Alex"; // definesc-o

Rețineți că parantezele din jurul unei expresii condiționate sunt o parte obligatorie a sintaxei instrucțiunii if.

A doua formă a instrucțiunii if introduce o clauză else care este executată atunci când expresia este evaluată ca false. Sintaxa sa este:

if (expresie) statement1 else statement2

Acest formular execută declarația1 dacă expresia este evaluată ca adevărată și instrucțiunea2 dacă expresia este evaluată ca fals. De exemplu:

If (n == 1) console.log("1 mesaj nou primit."); else console.log("Am primit " + n + " mesaje noi.");

else if declarație

Instrucțiunea if/else evaluează valoarea unei expresii și execută una sau alta bucată de cod de program, în funcție de rezultat. Dar ce se întâmplă dacă trebuie să executați unul dintre multele fragmente? Mod posibil a face acest lucru înseamnă a folosi declarația else if. Formal nu este operator independent JavaScript; Acesta este doar un stil obișnuit de programare de utilizare a unei declarații repetate if/else:

If (n == 1) ( // Executați blocul 1 ) else if (n == 2) ( // Executați blocul 2 ) else if (n == 3) ( // Executați blocul 3 ) else ( // Dacă nici unul una dintre instrucțiunile else anterioare nu a fost executată, executați blocul 4)

Nu este nimic special la această piesă. Este pur și simplu o secvență de instrucțiuni if, în care fiecare instrucțiune if face parte alt constructii operatorul anterior.

declarație switch

O instrucțiune if creează o ramură în fluxul programului, iar ramificarea cu mai multe stări poate fi implementată folosind mai multe instrucțiuni else if. Cu toate acestea, acest lucru nu este întotdeauna cea mai buna solutie, mai ales dacă toate ramurile depind de valoarea aceleiași expresii. În acest caz, este o risipă să reevaluezi aceeași expresie în mai multe instrucțiuni if.

Declarația switch este concepută special pentru astfel de situații. Cuvântul cheie switch este urmat de o expresie între paranteze și de un bloc de cod între acolade:

comutare (expresie) (instrucțiuni)

Cu toate acestea, sintaxa completă a unei instrucțiuni switch este mai complexă decât se arată aici. Diverse locuriîntr-un bloc sunt marcate cu cuvântul cheie case urmat de o expresie și un caracter două puncte.

Când este executată o instrucțiune switch, evaluează valoarea expresiei și apoi caută o etichetă de caz care se potrivește cu acea valoare (potrivirea este determinată folosind operatorul de identitate ===). Dacă eticheta este găsită, blocul de cod este executat, începând cu prima instrucțiune care urmează etichetei case. Dacă nu este găsită o etichetă de caz cu o valoare potrivită, execuția începe cu prima instrucțiune care urmează eticheta specială implicită: . Dacă eticheta implicită: lipsește, întregul bloc de instrucțiuni switch este omis.

Funcționarea declarației switch este dificil de explicat în cuvinte, explicația este mult mai clară cu un exemplu. Următoarea instrucțiune switch este echivalentă cu instrucțiunile repetate if/else prezentate în exemplul anterior:

Switch(n) ( cazul 1: // Executat dacă n === 1 // Execută blocul 1 întrerupere; // Opreste aici cazul 2: // Execut dacă n === 2 // Execută blocul 2 întrerupere; // Stop aici cazul 3: // Executare if n === 3 // Execut blocul 3 break // Opriți aici implicit: // Dacă totul eșuează... // Executați blocul 4;

Notați cuvântul cheie break la sfârșitul fiecărui bloc de caz. Instrucțiunea break face ca controlul să fie transferat la sfârșitul instrucțiunii switch și execuția următoarelor instrucțiuni să continue. Declarațiile Case dintr-o instrucțiune switch specifică doar punctul de pornire al codului programului care urmează să fie executat, dar nu specifică niciun punct final.

Dacă nu există instrucțiuni break, instrucțiunea switch va începe executarea blocului de cod cu eticheta case corespunzătoare valorii expresiei și va continua executarea instrucțiunilor până când ajunge la sfârșitul blocului. În cazuri rare, acest lucru este util pentru scrierea unui cod care trece de la o etichetă de caz la alta, dar în 99% din cazuri ar trebui să terminați cu atenție fiecare bloc de caz. operator de pauză. (Când utilizați un comutator în interiorul unei funcții, puteți utiliza o instrucțiune return în loc de o pauză. Ambele instrucțiuni servesc pentru a termina instrucțiunea switch și pentru a împiedica trecerea la următoarea etichetă de caz.)

Mai jos este un exemplu mai practic de utilizare a instrucțiunii switch, care convertește o valoare într-un șir într-un mod care depinde de tipul valorii:

Funcția convert(x) ( switch(typeof x) ( // Convertește un număr într-un număr întreg hexazecimal „număr”: return x.toString(16); // Returnează un șir între ghilimele case „șir”: return „"" + x + """; // Orice alt tip este convertit în mod obişnuit implicit: return x.toString();

) ) console.log(convert(1067)); // Rezultat "42b"

Rețineți că în cele două exemple anterioare, cuvintele cheie case au fost urmate de numere sau literale șir. Acesta este modul în care instrucțiunea switch este folosită cel mai des în practică, dar standardul ECMAScript vă permite să specificați expresii arbitrare după caz.

Deoarece nu toate expresiile case sunt evaluate de fiecare dată când este executată o instrucțiune switch, ar trebui să evitați să utilizați expresii case care au efecte secundare, cum ar fi apelurile de funcții și atribuirile. Cel mai sigur este să limitați expresiile de caz la expresii constante.

După cum sa explicat mai devreme, dacă nicio expresie case nu se potrivește cu o instrucțiune switch, instrucțiunea switch începe să execute instrucțiunea etichetată implicit:. Dacă eticheta implicită: lipsește, corpul instrucțiunii switch este omis complet. Rețineți că în exemplele anterioare, eticheta implicită: apare la sfârșitul corpului instrucțiunii switch, după toate etichetele case. Acesta este un loc logic și obișnuit pentru acesta, dar de fapt poate fi localizat oriunde într-o instrucțiune switch.

ÎN viata de zi cu zi Este adesea necesar să luați o decizie, în funcție de o anumită condiție. De exemplu, dacă vremea este caldă în weekend, vom merge la malul mării, în caz contrar, dacă este înnorat, vom sta acasă.

Acest lucru se întâmplă foarte des și în programare. Există două instrucțiuni condiționale pentru aceasta: if-else și switch-case. În acest articol vă voi spune despre operatorul if-else, iar în articolul următor despre switch-case.

Sintaxa instrucțiunii condiționale if-else este următoarea:


Dacă condiția este adevărată, atunci se execută codul din blocul if, în caz contrar, dacă condiția este falsă, atunci se execută codul din blocul else.

Pentru o mai bună înțelegere, să luăm un exemplu atât de simplu, avem o anumită sumă de bani și dorim să cumpărăm o mașină, iar aici apare imediat următoarea condiție: dacă avem destui bani, atunci putem cumpăra această mașină, altfel nu poate.

Var bani = 35000; // Să presupunem că avem 35.000 de euro // Mașina pe care vrem să o cumpărăm costă 50.000 de euro. Și următoarea condiție apare dacă(bani > 50000)( document.write(„Putem cumpăra o mașină”); )else( document.write(„Nu sunt suficienți bani pentru a cumpăra o mașină”); )

Salvăm documentul, îl deschidem în browser și vedem că pe pagină apare următorul mesaj: „Nu sunt suficienți bani pentru a cumpăra o mașină”. Dacă am avea mai mult de 50.000 de euro, atunci codul din blocul if ar fi executat. Dacă am avea exact 50.000 de euro, atunci nici nu am putea cumpăra o mașină, deoarece 50.000 nu este mai mult de 50.000 Pentru ca condiția în acest caz să fie adevărată, trebuie să scriem un semn mai mare sau egal (>=) .

Comentariu! Operația logică egal se scrie cu două semne egale (==). Există, de asemenea, o operație logică mai mică sau egală cu (

folosind bretele

Dacă există un singur operator, atunci bretele nu sunt necesare dacă există mai mult de un operator în bloc, atunci sunt necesare bretele.

Exemplul de mai sus va funcționa perfect fără acolade, deoarece ambele blocuri conțin o singură declarație.

Înăuntru dacă poți scrie vreunul operatii logice, indiferent dacă sunt simple sau complexe. De asemenea, puteți utiliza operatorii AND (&&) și SAU (||).

Comentariu! Prezența blocului else este opțională.

De exemplu, dacă a este egal cu b și c este egal cu d, atunci afișăm mesajul corespunzător, în caz contrar, dacă nu există niciun alt bloc, trecem pur și simplu la următoarea linie.

Var a = 4, b = 4, c = 8, d = 8; if((a == b) && (c == d)) document.write("a este egal cu b SI c este egal cu d"); document.write("Următoarea linie de cod");

If - else if - else declarație

După un bloc if, pot exista unul sau mai multe blocuri else if, iar la sfârșit există un bloc else. Acest lucru este util atunci când trebuie să utilizați mai multe condiții.


Pentru o mai bună înțelegere, să luăm un exemplu din viața de zi cu zi. De exemplu, avem un anumit număr de prize. Dacă avem o singură priză în cameră, atunci ne putem conecta un singur dispozitiv, dacă există două prize, atunci putem conecta două dispozitive, iar dacă mai multe, atunci ne putem conecta la reteaua electrica, toate dispozitivele de acasă.

Acum să trecem la programare.

priza Var = 2; // Numărul de prize din casă if(socket == 1)  document.write("

Putem conecta doar un singur dispozitiv

"); else if(socket == 2)( document.write("

Putem conecta doar două dispozitive

"); document.write("

De exemplu, televizor și laptop

"); )else( document.write("

Putem conecta toate dispozitivele din casa la reteaua electrica

"); }

În funcție de valoarea variabilei socket, unul sau altul bloc de cod va funcționa. După cum probabil ați înțeles deja, dacă socket-ul este egal cu 1, atunci primul bloc de cod va funcționa. Dacă socketul este egal cu 2, atunci al doilea bloc de cod va funcționa și dacă socketul are orice altă valoare (chiar și un număr negativ), atunci al treilea bloc de cod va funcționa.

Stenografie pentru dacă altceva

Notația scurtă poate fi folosită atunci când, în funcție de o anumită condiție, o variabilă poate primi una sau alta valoare.


De exemplu, dacă valoarea variabilei a este mai mare decât valoarea variabilei b, atunci în variabila x vom scrie următorul mesaj, „Variabila a este mai mare decât variabila b”, altfel vom scrie că „Variabila a este mai puțin decât variabila b.”

Var a = 50, b = 100, x; x = (a > b) ? "

Variabila a este mai mare decât variabila b

" : "

Variabila a este mai mică decât variabila b

"; //Afișează rezultatul rezultat document.write(x);

Atât am vrut să vă spun în acest articol. Declarația condițională if-else este folosită în mai multe scripturi, deci este foarte important să o cunoașteți și să o înțelegeți. În articolul următor vă voi spune despre un alt caz de comutare a operatorului condiționat.