Chương này mô tả các biểu thức và toán tử của JavaScript, bao gồm toán tử gán, so sánh, số học, bitwise, logic, chuỗi và toán tử điều kiện.
Toán tử số học
Toán tử số học +
(cộng), -
(trừ), *
(nhân), %
(lấy phần dư) tương tự như ngôn ngữ C. Toán tử chia sẽ lấy kết quả là dạng số thực. Toán tử **
là phép toán lũy thừa.
Toán tử ++
và --
cũng tương tự như C.
|
|
Toán tử gán
Toán tử gán tương tự như C. Toán tử gán gộp +=
, -=
, *=
, /=
, %=
cũng tương tự như C.
|
|
Toán tử với bit
Toán tử với bit trong Javascript tương tự như C gồm có toán tử & (and bit), | (or bit), ^ (xor bit), ~ (not bit), « (Shift left bit), » (Shift right bit).
|
|
Toán tử so sánh
Các toán tử so sánh trong Javascript tương tự như C gồm có:
Toán tử | Ý nghĩa |
---|---|
== | So sánh bằng |
!= | So sánh khác nhau |
> | Lớn hơn |
>= | Lớn hơn hoặc bằng |
< | Nhỏ hơn |
<= | Nhỏ hơn hoặc bằng |
Khác với ngôn ngữ C, trong JavaScript so sánh bằng có thể sử dụng với string. Ví dụ như:
|
|
Ngoài ra còn hai toán tử so sánh khác mà ngôn ngữ C không có đó là:
===
So sánh bằng nhau và cùng kiểu dữ liệu!==
Kết quả ngược lại với toán tử===
Toán tử logic
Toán tử logic trong Javascript giống với C. Được mô tả như sau:
Toán tử | Giải thích |
---|---|
&& | Toán tử AND logic |
and | Toán tử AND logic (giống như && ) |
|| | Toán tử OR logc |
or | Toán tử OR logc (giống như ` |
! | Toán tử NOT logic |
Short-circuit evaluation
Short-circuit evaluation là tính toán mà giá trị của biểu thức được đánh giá như sau:
false && anything
có kết quả luôn là false.
true || anything
có kết quả luôn là true.
Chú ý là cho dù anything
là gì thì cũng không quan trọng tới biểu thức cuối. Nên anything
sẽ không được đánh giá và sẽ được bỏ qua.
Ví dụ dưới đây sẽ không cần kiểm tra hàm foo()
có tồn tại và không thực thi foo()
|
|
Toán tử điều kiện (Conditional Operator)
Toán tử điều kiện (a ? b : c
) tương tự như ngôn ngữ C.
|
|