Toán tử tiền tố (++a) và hậu tố (a++)
++a trả về giá trị của a sau khi đã tăng lên 1. Đây là toán tử tiền tố vì ++ đứng trước toán hạng.
a++ trả về giá trị của a trước khi tăng. Đây là toán tử hậu tố vì ++ đứng sau toán hạng.
Ví dụ minh họa
Chạy đoạn mã sau để thấy rõ sự khác biệt:
<!DOCTYPE html>
<html>
<body>
<script>
var a = 10;
var b = 20;
// Tiền tố
a = ++a;
document.write("++a = " + a + "<br>");
// Hậu tố
b = b++;
document.write("b++ = " + b);
</script>
</body>
</html>
Giải thích kết quả
++a:atrở thành 11, biểu thức trả về 11.b++: biểu thức trả về giá trị cũ (20), sau đóbmới trở thành 21. Do gánb = b++,bvẫn giữ giá trị 20.
Lưu ý: Trong thực tế, tránh dùng b = b++ vì gây nhầm lẫn. Chỉ dùng a++ hoặc ++a độc lập trong câu lệnh.