Lloji Prefiks dhe Postfiks në JavaScript
Në fakt, operacionet e rritjes dhe pakësimit
mund të shkruhen në dy mënyra. Le t'i
shqyrtojmë këto mënyra duke përdorur shembullin ++,
dhe për -- gjithçka do të jetë e ngjashme.
Në mënyrën e parë, operacioni shkruhet pas
emrit të ndryshores, kështu: a++, ndërsa
në mënyrën e dytë - para emrit të ndryshores,
kështu: ++a.
Forma e parë quhet postfikse, ndërsa e dyta - prefikse. Le të shohim në cilat raste shfaqet ndryshimi midis këtyre dy formave.
Le të themi se kemi kodin alert(a++) dhe
kodin alert(++a).
Në rastin alert(a++) ndryshora fillimisht
do të shfaqet dhe më pas do të rritet me një,
ndërsa në rastin alert(++a) ndryshora fillimisht
do të rritet me një dhe më pas do të shfaqet.
Në shembullin vijues alert i parë do të shfaqë
0, pasi fillimisht do të ekzekutohet shfaqja
në ekran, dhe vetëm pastaj ndryshora do të rritet:
let num = 0;
alert(num++); // do të shfaqë 0
alert(num); // do të shfaqë 1
Tani ndryshora fillimisht do të rritet, dhe vetëm pastaj do të shfaqet në ekran:
let num = 0;
alert(++num); // do të shfaqë 1 - ndryshora u rrit menjëherë
Kjo sjellje është e vlefshme jo vetëm për shfaqjen në ekran, por edhe për caktimin:
let num1 = 0;
let num2 = num1++; // në ndryshoren num2 do të shkruhet 0
alert(num2); // do të shfaqë 0
alert(num1); // do të shfaqë 1 - ndryshora num1 ndryshua pas shkrimit në num2
Tani le ta ndryshojmë formën postfikse në prefikse:
let num1 = 0;
let num2 = ++num1; // në ndryshoren num2 do të shkruhet 1
alert(num2); // do të shfaqë 1
Nëse operacioni ynë ekzekutohet në një rresht të veçantë, atëherë nuk ka ndryshim midis formave prefikse dhe postfikse:
let num = 0;
++num;
num++;
alert(num); // do të shfaqë 2
Pa ekzekutuar kodin, përcaktoni çfarë do të shfaqet në ekran:
let num = 3;
alert(++num);
Pa ekzekutuar kodin, përcaktoni çfarë do të shfaqet në ekran:
let num = 3;
alert(num++);
Pa ekzekutuar kodin, përcaktoni çfarë do të shfaqet në ekran:
let num = 3;
alert(--num);
Pa ekzekutuar kodin, përcaktoni çfarë do të shfaqet në ekran:
let num = 3;
alert(num--);
Pa ekzekutuar kodin, përcaktoni çfarë do të shfaqet në ekran:
let num1 = 3;
let num2 = ++num1;
alert(num1);
alert(num2);
Pa ekzekutuar kodin, përcaktoni çfarë do të shfaqet në ekran:
let num1 = 3;
let num2 = num1++;
alert(num1);
alert(num2);
Pa ekzekutuar kodin, përcaktoni çfarë do të shfaqet në ekran:
let num1 = 3;
let num2 = --num1;
alert(num1);
alert(num2);
Pa ekzekutuar kodin, përcaktoni çfarë do të shfaqet në ekran:
let num1 = 3;
let num2 = num1--;
alert(num1);
alert(num2);
Pa ekzekutuar kodin, përcaktoni çfarë do të shfaqet në ekran:
let num1 = 3;
num1++;
let num2 = num1--;
alert(num1++);
alert(--num2);