⊗jsPmBsPPT 60 of 505 menu

Tipul prefix și postfix în JavaScript

De fapt, operațiile de incrementare și decrementare pot fi scrise în două moduri. Să analizăm aceste moduri folosind exemplul ++, iar pentru -- totul va fi analog.

În primul mod, operația se scrie după numele variabilei, astfel: a++, iar în al doilea mod - înaintea numelui variabilei, astfel: ++a.

Prima formă se numește postfix, iar a doua - prefix. Să vedem în ce cazuri apare diferența dintre aceste două forme.

Să presupunem că avem codul alert(a++) și codul alert(++a).

În cazul alert(a++) variabila mai întâi va fi afișată, și apoi va crește cu o unitate, iar în cazul alert(++a) variabila mai întâi va crește cu o unitate, și apoi va fi afișată.

În următorul exemplu, primul alert va afișa 0, deoarece mai întâi acționează afișarea pe ecran, și abia apoi variabila crește:

let num = 0; alert(num++); // va afișa 0 alert(num); // va afișa 1

Iar acum variabila mai întâi va crește, iar abia apoi va avea loc afișarea pe ecran:

let num = 0; alert(++num); // va afișa 1 - variabila a crescut imediat

Acest comportament este valabil nu doar pentru afișarea pe ecran, ci și pentru atribuire:

let num1 = 0; let num2 = num1++; // în variabila num2 se va scrie 0 alert(num2); // va afișa 0 alert(num1); // va afișa 1 - variabila num1 s-a schimbat după scrierea în num2

Iar acum să schimbăm forma postfix în prefix:

let num1 = 0; let num2 = ++num1; // în variabila num2 se va scrie 1 alert(num2); // va afișa 1

Dacă operația noastră se execută pe un rând separat, atunci nu există diferență între formele prefix și postfix:

let num = 0; ++num; num++; alert(num); // va afișa 2

Fără a rula codul, determinați ce va fi afișat pe ecran:

let num = 3; alert(++num);

Fără a rula codul, determinați ce va fi afișat pe ecran:

let num = 3; alert(num++);

Fără a rula codul, determinați ce va fi afișat pe ecran:

let num = 3; alert(--num);

Fără a rula codul, determinați ce va fi afișat pe ecran:

let num = 3; alert(num--);

Fără a rula codul, determinați ce va fi afișat pe ecran:

let num1 = 3; let num2 = ++num1; alert(num1); alert(num2);

Fără a rula codul, determinați ce va fi afișat pe ecran:

let num1 = 3; let num2 = num1++; alert(num1); alert(num2);

Fără a rula codul, determinați ce va fi afișat pe ecran:

let num1 = 3; let num2 = --num1; alert(num1); alert(num2);

Fără a rula codul, determinați ce va fi afișat pe ecran:

let num1 = 3; let num2 = num1--; alert(num1); alert(num2);

Fără a rula codul, determinați ce va fi afișat pe ecran:

let num1 = 3; num1++; let num2 = num1--; alert(num1++); alert(--num2);
Română
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Folosim cookie pentru funcționarea site-ului, analiză și personalizare. Prelucrarea datelor are loc în conformitate cu Politica de confidențialitate.
acceptă toate configurează respinge