Tipe Prefix dan Postfix dalam JavaScript
Sebenarnya operasi increment dan decrement
dapat ditulis dengan dua cara. Mari kita
bahas cara-cara ini menggunakan contoh ++,
dan untuk -- semuanya akan serupa.
Cara pertama, operasi ditulis setelah
nama variabel, seperti ini: a++, sedangkan
cara kedua - sebelum nama variabel,
seperti ini: ++a.
Bentuk pertama disebut postfix, dan bentuk kedua - prefix. Mari kita lihat, dalam kasus apa perbedaan antara kedua bentuk ini muncul.
Misalkan kita memiliki kode alert(a++) dan
kode alert(++a).
Dalam kasus alert(a++), variabel pertama-tama
akan ditampilkan, kemudian bertambah satu,
sedangkan dalam kasus alert(++a), variabel pertama-tama
bertambah satu, kemudian ditampilkan.
Dalam contoh berikut, alert pertama akan menampilkan
0, karena pada awalnya yang bekerja adalah penampilan
ke layar, dan baru kemudian variabel bertambah:
let num = 0;
alert(num++); // akan menampilkan 0
alert(num); // akan menampilkan 1
Sekarang variabel akan bertambah terlebih dahulu, lalu baru ditampilkan ke layar:
let num = 0;
alert(++num); // akan menampilkan 1 - variabel bertambah segera
Perilaku seperti ini tidak hanya berlaku untuk penampilan ke layar, tetapi juga untuk penugasan:
let num1 = 0;
let num2 = num1++; // variabel num2 akan berisi 0
alert(num2); // akan menampilkan 0
alert(num1); // akan menampilkan 1 - variabel num1 berubah setelah ditulis ke num2
Sekarang mari ubah bentuk postfix menjadi prefix:
let num1 = 0;
let num2 = ++num1; // variabel num2 akan berisi 1
alert(num2); // akan menampilkan 1
Jika operasi kita dilakukan pada baris yang terpisah, maka tidak ada perbedaan antara bentuk prefix dan postfix:
let num = 0;
++num;
num++;
alert(num); // akan menampilkan 2
Tanpa menjalankan kode, tentukan apa yang akan ditampilkan pada layar:
let num = 3;
alert(++num);
Tanpa menjalankan kode, tentukan apa yang akan ditampilkan pada layar:
let num = 3;
alert(num++);
Tanpa menjalankan kode, tentukan apa yang akan ditampilkan pada layar:
let num = 3;
alert(--num);
Tanpa menjalankan kode, tentukan apa yang akan ditampilkan pada layar:
let num = 3;
alert(num--);
Tanpa menjalankan kode, tentukan apa yang akan ditampilkan pada layar:
let num1 = 3;
let num2 = ++num1;
alert(num1);
alert(num2);
Tanpa menjalankan kode, tentukan apa yang akan ditampilkan pada layar:
let num1 = 3;
let num2 = num1++;
alert(num1);
alert(num2);
Tanpa menjalankan kode, tentukan apa yang akan ditampilkan pada layar:
let num1 = 3;
let num2 = --num1;
alert(num1);
alert(num2);
Tanpa menjalankan kode, tentukan apa yang akan ditampilkan pada layar:
let num1 = 3;
let num2 = num1--;
alert(num1);
alert(num2);
Tanpa menjalankan kode, tentukan apa yang akan ditampilkan pada layar:
let num1 = 3;
num1++;
let num2 = num1--;
alert(num1++);
alert(--num2);