Javascript - a++ và ++a khác nhau như thế nào?

Cho hai phép toán a++ và ++a, trong hai phép toán này sẽ có sự khác nhau như thế nào? Hãy phân tích sự giống nhau và khác nhau giữa hai biểu thức a++ và ++a này.

Bài giải

-------------------- ######## --------------------

Đây là hai biểu thức có cùng một mục đích là tăng lên một giá trị cho biến a. Tuy nhiên chúng sẽ có một số điểm giống và khác nhau.

Giống nhau giữa a++ và ++a

Cả hai biểu thức sau khi chạy thì biến a sẽ được tăng lên một đơn vị.

var a = 12;
a++;
alert(a); // Lúc này a = 13
++a;
alert(a); // Lúc này a = 14

Khác nhau giữa a++ và ++a

Sự khác biệt lớn nhất đó là biểu thức a++ sẽ tăng giá trị của a lên một đơn vị sau khi kết thúc dòng lệnh, còn biểu thức ++a sẽ tăng ngay và luôn.

var a = 12;
alert(a++); // Lúc này a = 12

var b = 12;
alert(++b); // Lúc này b = 13

Nguồn: freetuts.net