Tipuri de structuri de control al fluxului în JavaScript

Cuprins

Astăzi vom vedea structuri de control al fluxului, numite și simple structuri de control sau mai ales structuri iterative. Aceste instrucțiuni sunt foarte interesante și utilizate deoarece evoluează conceptul de la program la program inteligent.

De ce?

Dacă nu folosim structurile de control al fluxului, un program este simplu. Este un program care inițial folosește doar variabile și operatori în ceea ce putem numi o secvență de instrucțiuni în timp liniar, adică unul după altul.
Prin introducerea structurilor pe care le vom vedea mai jos, programul nostru încetează să fie o simplă secvență liniară de instrucțiuni ineficiente pentru a deveni un program capabil să ia decizii în funcție de valoarea variabilelor pe care le gestionează, de aceea sunt numite „inteligente” .

structuri iterative sunt așa numite deoarece instrucțiunile care trebuie îndeplinite poate fi repetat de una sau de multe ori. Există o mare varietate de tipuri de structuri iterative cu particularitățile lor, cu toate acestea toate au ceva în comun, au un singur punct de intrare, adică sunt activate la introducerea unei date.

Acum vom vedea diferite tipuri de structuri iterative în JavaScriptDeși în realitate în toate sau aproape toate limbajele de programare există practic aceleași structuri și servesc aceleași scopuri, diferența este modul în care sunt scrise, adică sintaxa.

Vom începe cu structura iterativă, care este probabil cea mai simplă și, de asemenea, cea mai utilizată. Ne referim la structură dacă.

Structura IFSpun că este cel mai simplu de la introducerea informațiilor și după verificarea a ceea ce face programul nostru este că, dacă condiția prestabilită este îndeplinită, executăm propoziția sau propozițiile pe care le-ați predefinit în cod. Pe de altă parte, dacă această condiție nu este îndeplinită, ea părăsește structura și nu execută codul care o însoțește.

Un exemplu cu cod Javascript este următorul:

 Dacă (x) {alert („Valoarea este adevărată”); } 
Simplu ca buna ziua. Singurul lucru pe care îl spunem este că dacă variabila pe care o introducem (x) este adevărată, scrieți „Valoarea este adevărată” și dacă nu este adevărată, atunci nu scrieți nimic. S-ar putea exprima și cu If (x == true) fiind foarte important să nu confundăm operatorul == care compară ambele valori cu = Ceea ce face este să atribuiți valoarea din stânga, valoarea din dreapta.

Această structură în sine este utilizată pentru a valida orice tip de informație introdusă într-un mod foarte recurent, cu toate acestea, este însoțită de obicei de o altă structură numită altfel.
Altfel este folosit ca o completare a dacă, deoarece dacă condiția stabilită de dacă nu este îndeplinită și continuă cu altceva, instrucțiunea sau instrucțiunile asociate structurii de control menționate sunt executate automat așa cum se poate vedea în următorul exemplu:

 Dacă (x) {alert („Valoarea este adevărată”); } else {alert („Valoarea este falsă”); } 
Ca și în exemplul anterior, dacă datele introduse, x, sunt adevărate, scrieți „Valoarea este adevărată”. Diferența cu exemplul anterior în care, dacă x nu era adevărat, nu a făcut nimic este că acum, așa cum se întâmplă la altceva, scrie direct „Valoarea este falsă”.
Acest lucru este foarte util dacă informațiile pot fi adevărate sau false, negre sau albe, da sau nu sau orice altă combinație binară sau una sau alta. Cu toate acestea, este de obicei cazul în care vrem să știm dacă datele pe care le introducem îndeplinesc oricare dintre mai multe condiții care sunt exclusiveDe exemplu, dacă vrem să știm dacă jucătorul nostru este fundaș, mijlocaș, portar sau atacant. Întotdeauna va fi doar unul dintre cele patru lucruri și aici, dacă și altfel nu funcționează pentru noi.
În acest caz putem folosi altfel dacă structură ce înseamnă dacă nu. Putem folosi toate celelalte lucruri dacă dorim întotdeauna după prima noastră structură if și înainte de ultima, care va fi altfel, așa cum putem vedea în următorul cod:
 If (jucător == portar) {alert ("Jucătorul este portar"); } else if (jucător == apărare) {alert ("Jucătorul este apărare"); } else if (jucător == mijlocaș) {alert („Jucătorul este mijlocaș”); } else {alert („Jucătorul este înainte”); } 
În acest fel, programul verifică mai întâi dacă este un portar. Dacă este, îl scrie, dacă nu merge la primul altceva dacă să verifice dacă este apărare. Dacă este, scrieți-l. Dacă nu este, merge la următorul bloc pentru a verifica dacă este mijlocaș. Dacă este, scrieți-l. Dacă nu este una dintre cele trei opțiuni, intră în ultimul bloc. Ceea ce face este să scrie că este redirecționat prin aruncare.

Structurile pe care tocmai le-am văzut nu ajung să fie eficiente dacă verificările sunt foarte repetitive, caz în care alte structuri de control, cum ar fi in timp ce sau faceți în timp ce pentru:

WHILE buclăAceastă structură este ceea ce este cunoscut sub numele de while (care este traducerea literală din engleză) în algoritmică. Și, așa cum spune propria sa semnificație, este o buclă care execută instrucțiunile in timp ce condiția sau condițiile rămân adevărate, atâta timp cât continuă să returneze „adevărat” ca valoare.
De aceea structura bucla menționată este foarte simplă:
în timp ce (stare)
{
instrucțiuni;
}

A exemplu simplu în JavaScript poate fi următorul:

 contor var = 1; while (num <5) {alert ("num"); num + = 1; } 
Acest lucru este la fel de simplu ca adăugarea una câte una la variabila noastră num până când ajunge la 5.
Ce se întâmplă dacă condiția nu este îndeplinită înainte de a intra în buclă?

Că bucla nu va rula niciodată. Și aici ajungem la un tip special al buclei while numită face în timp ce. Această structură este utilizată dacă vrem ca programul să intre cel puțin o dată în buclă. Traducerea literală este face … atâta timp cât o face cel puțin o dată, introduceți bucla.

De ce intră întotdeauna în bucla noastră cel puțin o dată?

Deoarece așa cum vom vedea mai jos, condiția de a executa bucla se face după ce o faceți. Poate suna complicat, dar vom vedea că este foarte simplu:

 var fact = 1; var num = 10; do {fact = num * fact; num--; } while (num> 0); alert (num); 
Ar fi exemplul.

Ce se întâmplă în acest exemplu?

Aceasta intră mai întâi în buclă și face două instrucțiuni, înmulțind rezultatul cu numărul și apoi micșorând numărul. Acest proces îl repetă până când numărul nostru este 1. La ieșirea din buclă, scrieți numărul care a fost inițial 10 și acum este 1.
Această buclă ar putea fi apoi scrisă exact la fel cu while. Pe de altă parte, dacă în inițializare var num = 0; intră în buclă, face instrucțiunile și num rămâne cu valoarea -1, ceea ce nu s-ar întâmpla cu timp, deoarece nu ar intra în buclă și așa a făcut-o o dată.
Evident, acesta este un exemplu foarte simplu, cu puțină utilizare, dar atunci când programăm este foarte interesant dacă dorim ca un meniu să fie afișat cel puțin o dată.

După ce am văzut bucla while și do while, vom vedea ce cred că este cel mai folosit în programare. Vorbim despre celebra buclă pentru.

PENTRU structurăEste cea mai utilizată buclă pentru eficiența sa, deși este mai complexă decât structurile iterative anterioare.
Are următoarea formă:

pentru (ordinea de initializare; condiție; ordinea de Actualizați)
{
Instrucțiuni de executat
}

Si a lui operarea este foarte simplă:
În prima parte a buclei, una sau mai multe variabile sunt inițializate, adică li se dă o valoare. După primul punct și virgulă, este definită condiția care trebuie îndeplinită pentru a executa instrucțiunile. Și ultima parte a parantezei, actualizarea, este valoarea care va fi atribuită variabilelor care au fost inițializate.
Foarte simplu, atâta timp cât este îndeplinită condiția specificată, instrucțiunile din bucla for sunt executate. După executare, actualizăm valoarea variabilelor utilizate în condiție.
Acum vom vedea un exemplu scris în Javascript:

 for (i = 0; i <10; i ++) {alert („Este încă mai puțin de 10”); } 
Am creat și inițializat variabila i cu valoarea 0. Este important să rețineți că această parte a buclei se execută doar prima dată, restul de ori nu o ține cont, deoarece este inițializată doar o dată . Zona noastră de stare este atâta timp cât i este mai mică de 10 și, prin urmare, bucla noastră se va repeta până când i nu mai este mai mică de 10.
Acum intră în joc zona de upgrade. Dacă valoarea lui i nu ar fi modificată, așa cum am inițializat-o la 0, ar deveni o buclă infinită.
În zona noastră de actualizare schimbăm valoarea variabilei noastre. În cazul exemplului, de fiecare dată când bucla este executată, valoarea lui i este mărită cu 1, dar ar putea fi setate și alte instrucțiuni precum înmulțirea, scăderea etc.

pentru bucla este foarte util în lumea programării și, deși mai puțin frecvent, există un caz special solicitat în. Deși acest lucru este de obicei utilizat în programarea obiectelor care sunt deja destul de avansate, utilizarea care poate fi făcută în matrice este interesantă.
Buclă pentru în ceea ce face este să treacă printr-o matrice care trece prin toate elementele sale în mod eficient. Definit un tablou, codul este după cum urmează:

 var array = ["First", "Second", "Third", "Fourth"]; pentru (i în matrici) {alert ("Curs: matrice (i)"); } 
El scrie toate cursurile disponibile de la primul la al patrulea.

În cele din urmă, vom vorbi despre o altă dintre cele mai utilizate structuri de control al fluxului, care este bucla de comutare, ceea ce înseamnă să alegeți în limba engleză.

Bucla SWITCHFolosim această structură aproape ori de câte ori dorim să creăm un meniu cu diferitele sale opțiuni. Este un fel de optimizare a repetării buclelor else if pe care le-am văzut înainte și care funcționează mult mai bine și fără a fi redundante. Îl folosim pentru acele vremuri în care dorim să facem mai multe verificări ale aceleiași variabile, adică să alegem o caracteristică în locul unei variabile care o exclude de la a avea alta.

comutați forma este următorul:

 comutator (scrisoare) {caz a: instrucțiuni; pauză; cazul b: instrucțiuni; pauză; caz c: instrucțiuni; pauză; caz d: instrucțiuni; pauză; implicit: instrucțiuni; pauză; } 
Bucla anterioară este trecută de o variabilă, în acest caz litera. Verifică această variabilă și în funcție de care intră și execută una sau cealaltă instrucțiuni și apoi iese din buclă. Pentru a introduce fiecare dintre opțiunile disponibile ale variabilei noastre litere, se folosește litera minusculă. Bucla se părăsește utilizând cuvântul cheie break, care este un instrucțiunea de salt, care întrerupe sau modifică fluxul programului, în acest caz forțând ieșirea buclei prematur. Cu toate acestea, nu este obligatoriu să introduceți acest cuvânt.

În acest fel, nu am tăia fluxul programului și nu vom verifica restul opțiunilor (că știm că nu va fi adevărat) deci va fi mai puțin optim. Este foarte important să rețineți că verificările se fac în ordinePrin urmare, dacă știm ce opțiune sau opțiuni vor fi utilizate cel mai mult, este mai bine să le plasăm mai întâi.
valoare implicită pe care îl vedem în cod este cel utilizat dacă valoarea introdusă nu se potrivește cu niciun caz. În acest caz, se sare automat la implicit. Cu toate acestea, nu este obligatoriu să includem valorile implicite în codul nostru.

V-a plăcut și ați ajutat acest tutorial?Puteți recompensa autorul apăsând acest buton pentru a-i oferi un punct pozitiv
wave wave wave wave wave