Số học JavaScript
Toán tử số học JavaScript
Toán tử số học thực hiện số học trên các số (chữ hoặc biến).
Operator | Description |
---|---|
+ | Addition |
- | Subtraction |
* | Multiplication |
** | Exponentiation (ES2016) |
/ | Division |
% | Modulus (Remainder) |
++ | Increment |
-- | Decrement |
Các phép tính toán học
Một phép toán số học điển hình hoạt động trên hai số.
Hai số có thể là chữ:
Thí dụ
let x = 100 + 50;
hoặc các biến:
Thí dụ
let x = a + b;
hoặc các biểu thức:
Thí dụ
let x = (100 + 50) * a;
Toán tử và Toán hạng
Các số (trong một phép toán số học) được gọi là toán hạng .
Phép toán (được thực hiện giữa hai toán hạng) được xác định bởi một toán tử .
Toán hạng | Nhà điều hành | Toán hạng |
---|---|---|
100 | + | 50 |
Thêm
Toán tử cộng ( +
) thêm các số:
Thí dụ
let x = 5;
let y = 2;
let z = x + y;
Trừ đi
Toán tử phép trừ ( -
) trừ các số.
Thí dụ
let x = 5;
let y = 2;
let z = x - y;
Nhân
Toán tử nhân ( *
) nhân các số.
Thí dụ
let x = 5;
let y = 2;
let z = x * y;
Phân chia
Toán tử chia ( /
) chia các số.
Thí dụ
let x = 5;
let y = 2;
let z = x / y;
Phần còn lại
Toán tử modulus ( %
) trả về phần dư của phép chia.
Thí dụ
let x = 5;
let y = 2;
let z = x % y;
Trong số học, phép chia hai số nguyên tạo ra thương và số dư .
Trong toán học, kết quả của một phép toán modulo là phần còn lại của một phép chia số học.
Tăng dần
Toán tử tăng ( ++
) tăng số.
Thí dụ
let x = 5;
x++;
let z = x;
Đang giảm dần
Toán tử giảm dần ( --
) giảm số.
Thí dụ
let x = 5;
x--;
let z = x;
Luỹ thừa
Toán tử lũy thừa ( **
) nâng toán hạng đầu tiên lên lũy thừa của toán hạng thứ hai.
Thí dụ
let x = 5;
let z =
x ** 2; // result is 25
x ** y cho kết quả tương tự như Math.pow(x,y)
sau:
Thí dụ
let x = 5;
let z =
Math.pow(x,2); // result is 25
ưu tiên điều hành
Mức độ ưu tiên của toán tử mô tả thứ tự thực hiện các phép toán trong một biểu thức số học.
Thí dụ
let x = 100 + 50 * 3;
Kết quả của ví dụ trên giống với 150 * 3 hay giống với 100 + 150?
Phép cộng hay phép nhân được thực hiện trước?
Như trong toán học truyền thống, phép nhân được thực hiện đầu tiên.
Phép nhân ( *
) và phép chia ( /
) có mức độ ưu tiên cao hơn phép cộng ( +
) và phép trừ ( -
).
Và (như trong môn toán học ở trường), mức độ ưu tiên có thể được thay đổi bằng cách sử dụng dấu ngoặc đơn:
Thí dụ
let x = (100 + 50) * 3;
Khi sử dụng dấu ngoặc, các phép toán bên trong dấu ngoặc sẽ được tính trước.
Khi nhiều phép toán có cùng mức độ ưu tiên (như cộng và trừ), chúng được tính từ trái sang phải:
Thí dụ
let x = 100 + 50 - 3;
Giá trị ưu tiên toán tử JavaScript
Các mục nhập màu đỏ nhạt cho biết ECMAScript 2015 (ES6) trở lên.
Giá trị | Nhà điều hành | Sự miêu tả | Thí dụ |
---|---|---|---|
21 | () | Nhóm biểu thức | (3 + 4) |
20 | . | Thành viên | người.name |
20 | [] | Thành viên | người ["tên"] |
20 | () | Gọi hàm | myFunction () |
20 | Mới | Tạo ra | Ngày mới () |
18 | ++ | Gia tăng hậu tố | i ++ |
18 | - | Postfix giảm | tôi-- |
17 | ++ | Tiền tố tăng dần | ++ tôi |
17 | - | Giảm tiền tố | --tôi |
17 | ! | Lôgic không | ! (x == y) |
17 | loại | Loại | typeof x |
16 | ** | Luỹ thừa (ES2016) | 10 ** 2 |
15 | * | Phép nhân | 10 * 5 |
15 | / | Phân công | 10/5 |
15 | % | Phần còn lại | 10% 5 |
14 | + | Phép cộng | 10 + 5 |
14 | - | Phép trừ | 10 - 5 |
13 | << | Sang trái | x << 2 |
13 | >> | Chuyển sang phải | x >> 2 |
13 | >>> | Chuyển sang phải (không dấu) | x >>> 2 |
12 | < | Ít hơn | x <y |
12 | <= | Nhỏ hơn hoặc bằng | x <= y |
12 | > | Lớn hơn | x> y |
12 | > = | Lớn hơn hoặc bằng | x> = y |
12 | trong | Thuộc tính trong Đối tượng | "PI" trong Toán học |
12 | ví dụ của | Bản sao của đối tượng | instanceof Array |
11 | == | Bình đẳng | x == y |
11 | === | Ngang bằng nghiêm ngặt | x === y |
11 | ! = | Không bằng nhau | x! = y |
11 | ! == | Không bình đẳng nghiêm ngặt | x! == y |
10 | & | Bitwise VÀ | x & y |
9 | ^ | Bitwise XOR | x ^ y |
số 8 | | | Bitwise HOẶC | x | Y |
7 | && | Logic AND | x && y |
6 | || | Lôgic HOẶC | x || Y |
5 | ?? | Nullish Coalescing | x ?? Y |
4 | ? : | Tình trạng | ? "Có không" |
3 | + = | Phân công | x + = y |
3 | / = | Phân công | x / = y |
3 | - = | Phân công | x - = y |
3 | * = | Phân công | x * = y |
3 | % = | Phân công | x% = y |
3 | << = | Phân công | x << = y |
3 | >> = | Phân công | x >> = y |
3 | >>> = | Phân công | x >>> = y |
3 | & = | Phân công | x & = y |
3 | ^ = | Phân công | x ^ = y |
3 | | = | Phân công | x | = y |
2 | năng suất | Chức năng tạm dừng | năng suất x |
1 | , | Dấu phẩy | 5, 6 |
Các biểu thức trong ngoặc đơn được tính toán đầy đủ trước khi giá trị được sử dụng trong phần còn lại của biểu thức.