4 Declarații JavaScript utile trebuie să știți
Declarațiile JavaScript ne dau puterea să pună în aplicare diferite tipuri de logică în codul nostru. JavaScript ne oferă câteva dintre ele, toate având scopul și sintaxa proprie. Printre cele mai cunoscute exemple se numără expresii de expresie, declarații de iterație, afirmații condiționale și multe altele
În postul de astăzi vom vedea patru declarații mai puțin frecvente ale JavaScript este posibil să nu fi știut înainte, dar puteți aprofunda cunoștințele dvs. JavaScript și vă puteți permite să scrieți un cod mai bun.
1. Declarație goală
În loc de orice declarație JavaScript, puteți adăuga o instrucțiune goală, care este scrisă ca un singur semi-colon ;
. Atunci când interpretul JavaScript interpretează o instrucțiune goală, niciun cod nu este executat, prin urmare, ele pot fi utile pentru înlocuiți sub-instrucțiunile pe care nu doriți să le executați.
De exemplu, presupuneți că există o variabilă numită turnesol
cu valoarea implicită neutru
. Pe baza valorii unei alte variabile numite pH
, turnesol
modificări la oricare dintre acestea acid
când pH-ul < 7 or de bază
când pH> 7.
Dacă valoarea lui pH
se dovedește a fi nevalid, o eroare este aruncată. Pentru o condiție Astfel, se aplică următoarele afirmații condiționale:
var litmus = "neutru"; var pH; dacă (pH> 0 && pH<7) litmus = 'acidic'; else if(pH>7 && pH<15) litmus = 'basic'; else throw "Invalid pH value";
Cu toate acestea, setul de instrucțiuni de mai sus aruncă o eroare când pH
este de 7, ceea ce nu ar trebui să fie cazul.
Cand pH
este 7, turnesol
ar trebui să păstreze valoarea implicită, adică neutru
. Deci, pentru un caz ca acesta, adăugați o condiție când pH
este 7 cu o declarație goală.
var litmus = "neutru"; var pH; dacă (pH> 0 && pH<7) litmus = 'acidic'; else if(pH===7) ; /* empty statement */ else if(pH>7 && pH<15) litmus = 'basic'; else throw "Invalid pH value";
Acum, când pH
este de 7, interpretul nu execută nici o instrucțiune și turnesol
păstrează valoarea implicită, neutru
.
Exprimările goale pot fi, de asemenea, folosite pentru a popula o matrice cu ajutorul lui pentru
buclă.
var var = []; pentru (var i = 0; i < 5; ary[i++] = i) ; /* empty statement */ console.log(ary); // [1, 2, 3, 4, 5]
De obicei, a pentru
instrucțiunea buclă este urmată de o sub-instrucțiune care este alcătuită dintr-o singură declarație sau dintr-o instrucțiune bloc (cea inclusă în curbate curbate) care urmează să fie executate. Folosind o instrucțiune goală în locul sub-instrucțiunii, interpretul nu va avea nimic de executat după fiecare buclă, deci doar luping apare, iar condițiile de rulare se execută.
În exemplul de mai sus, arii [i ++] = i
se execută pentru fiecare iterație de buclă ca parte a condiției looping și a matricei Ary
devine instanțiat cu valori de eu
.
2. The debugger
Afirmație
În instrumentele de depanare, putem adăugați marcatori denumit breakpoints la orice linie din codul sursă marcați liniile de unde va debuga instrumentul de depanare.
În JavaScript, debugger
afirmație funcționează la fel ca un punct de întrerupere, cu excepția faptului că este adăugate direct în codul sursă, mai degrabă decât într-un instrument. Orice debugger rulează opriți executarea scriptului când ajunge la debugger
pentru a vă ajuta să depanați codul.
Rețineți că depanarea va fi declanșată numai dacă scriptul rulează într-un mod de depanare, adică un program de depanare se execută deja peste execuția scriptului. Dacă în timpul interpretării nu există niciun program debugger care rulează în prezent debugger
, interpretul își va continua activitatea ca și cum nu s-ar întâmpla nimic.
Ca un test rapid, executați următorul cod în Codepen, păstrând în același timp instrumentul de depanare al browserului:
console.log ( 'tesing'); depanator; console.log ("instrucțiune de depanare");
Veți vedea un punct de întrerupere în afară de debugger
precum este prezentat mai jos în instrumentul de depanare al browserului.
3. Declarație marcată
În JavaScript, puteți adăuga și etichete la anumite declarații. Făcând acest lucru, puteți săriți mai târziu la declarația etichetată folosind eticheta în codul dvs., cam ca mergi la
instrucțiunea funcționează în alte limbi.
Comenzile etichetate pot fi utilizate numai împreună cu pauză
și continua
declarații, ca în JavaScript nu există literal mergi la
afirmație.
Ambii pauză
și continua
pot fi utilizate numai în declarații de buclă, cum ar fi pentru
(cu o singură excepție, pauză
pot fi utilizate în intrerupator
declarație). Deci, putem eticheta buclele și să le folosim pauză
și continua
pentru a controla executarea lor.
sintaxa de afirmații etichetate este simplu, trebuie doar să adăugați numele etichetei cu următorul colon, după cum îl puteți vedea în exemplul de mai jos, unde buclă
este numele etichetei pe care o adăugăm la pentru
buclă.
buclă: pentru (var i = 0; i<5; i++) if(i===2) continue loop; console.log(i); // 0, 1, 3, 4
Atunci când valoarea eu
este 2, execuția sare înapoi în bucla în loc de a continua și, prin urmare, previne ieșirea consola de “2”.
Acum, să vedem un alt exemplu cu pauză
afirmație. Doar înlocuiți continua
cuvânt cheie cu pauză
în exemplul de mai sus, și veți observa că, în loc să se sară înapoi la bucla așa cum a făcut-o cu ea continua
, bucla se termină / se rupe cu totul.
buclă: pentru (var i = 0; i<5; i++) if(i===2) break loop; console.log(i); // 0, 1
Exemplele de mai sus au fost destul de simple, astfel încât să puteți înțelege rapid modul în care funcționează instrucțiunile etichetate, dar în codificarea din viața reală, etichetele sunt mai frecvent utilizate în bucle compuse, când este necesar să se facă distincția între diferite bucle, ca în exemplul următor:
buclă: pentru (var i = 0; i<4; i++) for(var j=0; j<2; j++) if(i===2 && j===1) break loop; console.log(i+"-"+j);
Aici bucla exterioară pauze la valoarea 2 pentru variabila eu
și la 1 pentru j
, iar consola returnează următoarea ieșire:
0-0 0-1 1-0 1-1 2-0
4. The cu
Afirmație
Atunci când interpretul JS vine peste un nume necalificat care nu specifică ce obiect sau funcție este asociat cu apelul caută lanțul de aplicare pentru orice obiect sau funcție adecvată la care se poate face apelul.
Utilizând cu
declarație, putem adăugați un obiect în partea de sus a lanțului de aplicare, și specificați ce obiect este asociat cu apelul.
În exemplul următor, puteți vedea că proprietățile persoană
obiect sunt numite folosind numai numele lor în interiorul cu
afirmație.
var person = firstName: "John", lastName: "Doe", varsta: "18", tara: "Groenlanda"; cu (persoană) console.log ("Bună, numele meu este" + firstName + "" + lastName + ". // "Bună, numele meu este John Doe. Sunt de 18 ani și trăiesc în Groenlanda."
Comparați modul în care va arăta codul de mai sus fără a utiliza codul cu
afirmație:
var person = firstName: "John", lastName: "Doe", varsta: "18", tara: "Groenlanda"; console.log ("Bună, numele meu este" + person.firstName + "" + person.lastName + ". Sunt" + person.age + "de ani și locuiesc în" + person.country + "." ); // "Bună, numele meu este John Doe. Sunt de 18 ani și trăiesc în Groenlanda."
Poti vedea cu
declarația poate fi o scurtătură excelentă dacă lucrați cu mai multe proprietăți ale aceluiași obiect.
Rețineți, totuși, că utilizarea cu
afirmație în modul strict nu este permisă, deoarece aceasta poate provoca confuzie în anumite domenii.
De asemenea, este recomandat doar să utilizați cu
dacă declarațiile sale interne utilizează obiectul asociat cu cu
, în caz contrar interpretul va pierde timpul în căutarea obiectului menționat cu
în primul rând, pentru toate numele proprietăților necalificate pe care le găsește mai târziu în interiorul cu
bloc.