toán học JavaScript
trình cảnh là phép toán.
toán tử toán học JavaScript
toán tử toán học thực hiện phép toán toán học trên số (ký tự hoặc biến).
Giá trị | Toán tử |
---|---|
+ | phép cộng |
- | phép trừ |
* | phép nhân |
** | lũy thừa (ES2016) |
/ | phép chia |
% | hệ số |
++ | tăng |
-- | giảm |
toán tử toán học
Các phép toán toán học tiêu biểu sẽ tác động đến hai số.
các số này có thể là giá trị trực tiếp:
Mô tả
var x = 7 + 8;
hoặc biến:
Mô tả
var x = a + b;
hoặc biểu thức:
Mô tả
var x = (7 + 8) * a;
toán tử và thực thể toán học
Trong phép toán, số được gọi làthực thể toán họcƯu tiên
vận算 được thực hiện giữa hai thực thể (hai số đầu vào)Giá trịđịnh nghĩa.
thực thể toán học | Giá trị | thực thể toán học |
---|---|---|
7 | + | 8 |
hệ số
hệ sốtoán tử (%
trả về số dư của phép chia.
var x = 7; var y = 2; var z = x % y;
Chú thích:Trong toán học, phép chia hai số nguyên tạo ra số dư và số dư.
Chú thích:Trong toán học, kết quả của phép lấy dư là số dư của phép chia phép toán.
lũy thừa
toán tử lũy thừa (**) nâng số đầu tiên lên lũy thừa của số thứ hai.
Mô tả
Kết quả của x ** y là tương đương với Math.pow(x,y): var z = x ** 2; // Kết quả là 25
x ** y 产生的结果与 Math.pow(x,y) 相同:
Mô tả
Kết quả của x ** y là tương đương với Math.pow(x,y): var x = 5;
var z = Math.pow(x,2); // Kết quả là 25
Ưu tiên toán tử
Mô tả
Ưu tiên toán tử (Operator precedence) mô tả thứ tự thực hiện các phép toán trong biểu thức toán học.
var x = 200 + 50 * 2;
Kết quả của ví dụ là 250 * 2 hay 200 + 100?
Ở trước là cộng hay nhân?
Trong toán học trường học truyền thống, nhân là ưu tiên.*
Nâng cử%
)và chia (+
)và cộng (-
)và trừ ()có mức độ cao hơnƯu tiên
.
Mô tả
var x = (200 + 50) * 2;
Tương tự, (như trong toán học trường học) có thể thay đổi mức độ ưu tiên bằng cách sử dụng dấu ngoặc:
Khi sử dụng dấu ngoặc, toán tử trong dấu ngoặc sẽ được tính toán trước.
Mô tả
Khi nhiều toán tử có cùng mức độ ưu tiên (ví dụ như cộng và trừ), việc tính toán của chúng sẽ từ trái sang phải:
Thử ngay
Giá trị ưu tiên toán tử JavaScript | Giá trị | Toán tử | Mô tả |
---|---|---|---|
20 | ( ) | Nhóm biểu thức | (3 + 4) |
19 | . | Thành viên | person.name |
19 | [] | Thành viên | person["name"] |
19 | () | Gọi hàm | myFunction() |
19 | new | Tạo | new Date() |
17 | ++ | Tăng sau | i++ |
17 | -- | Giảm sau | i-- |
16 | ++ | Tăng trước | ++i |
16 | -- | Giảm trước | --i |
16 | ! | 逻辑非 | !(x==y) |
16 | typeof | Loại | typeof x |
15 | ** | Tính幂 (ES7) | 10 ** 2 |
14 | * | Nhân | 10 * 5 |
14 | / | Chia | 10 / 5 |
14 | % | Phép chia dư | 10 % 5 |
13 | + | Cộng | 10 + 5 |
13 | - | Trừ | 10 - 5 |
12 | << | Dịch chuyển trái | x << 2 |
12 | >> | Dịch chuyển phải | x >> 2 |
12 | >>> | Dịch chuyển phải (không dấu) | x >>> 2 |
11 | < | Nhỏ hơn | x < y |
11 | <= | Nhỏ hơn hoặc bằng | x <= y |
11 | > | Lớn hơn | x > y |
11 | >= | Lớn hơn hoặc bằng | x >= y |
11 | in | Thuộc tính trong đối tượng | "PI" trong Math |
11 | instanceof | Là instance của đối tượng | instanceof Array |
10 | == | Bằng | x == y |
10 | === | Chặt chẽ bằng | x === y |
10 | != | 不相等 | x != y |
10 | !== | 严格不相等 | x !== y |
9 | & | 按位与 | x & y |
8 | ^ | 按位 XOR | x ^ y |
7 | | | 按位或 | x | y |
6 | && | 逻辑与 | x && y |
5 | || | 逻辑非 | x || y |
4 | ? : | 条件 | ? "Yes" : "No" |
3 | = | 赋值 | x = y |
3 | += | 赋值 | x += y |
3 | -= | 赋值 | x -= y |
3 | *= | 赋值 | x *= y |
3 | %= | 赋值 | x %= y |
3 | <<= | 赋值 | x <<= y |
3 | >>= | 赋值 | x >>= y |
3 | >>>= | 赋值 | x >>>= y |
3 | &= | 赋值 | x &= y |
3 | ^= | 赋值 | x ^= y |
3 | |= | 赋值 | x |= y |
2 | yield | 暂停函数 | yield x |
1 | , | 逗号 | 7, 8 |
注意:淡红色指示实验性或建议性的技术(ECMASScript 2016 或 ES7)
提示:括号中的表达式会在值在表达式的其余部分中被使用之前进行完全计算。