Javascript - Các phép toán

Các toán tử trong Javascript

Các JavaScript là các ký hiệu được sử dụng để thực hiện các toán tử trên các toán hạng.

var sum=10+20;  

Dấu "+" là toán tử cộng, dấu "=" là toán tử gán.

Các kiểu toán tử trong Javascript

  1. Toán tử Số học
  2. Toán tử so sánh
  3. Toán tử dịch bit
  4. Toán tử điều khiển logic
  5. Toán tử đặc biệt

1. toán tử Số học

Toán tử số học được sử dụng để thực hiện các phép tính số học trên các toán hạng. Các toán tử sau đây được gọi là các toán tử số học JavaScript.

Toán tử Giải thích Ví dụ Kết quả
+ Cộng 10+20 30
- Trừ 20-10 10
* Nhân 10*20 200
/ Chia 20/10 2
% Chia lấy dư 20%10 0
++ Tăng 1 đơn vị var a=10; a++; 11
-- Giảm 1 đơn vị var a=10; a--; 9

2. Các toán tử so sánh

toán tử so sánh JavaScript dùng để so sánh hai toán hạng. Dưới đây là các toán tử so sánh:

Toán tử Giải thích Ví dụ Kết quả
== So sánh bằng 10==20 false
=== So sánh bằng và cùng kiểu dữ liệu 10==20 false
!= So sánh không bằng 10!=20 true
!== So sánh không bằng và cùng kiểu dữ liệu 20!==20 false
> Lớn hơn 20>10 true
>= Lớn hơn hoặc bằng 20>=10 true
< Nhỏ hơn 20<10 false
<= Nhỏ hơn hoặc bằng 20<=10 false

3. Các toán tử được thực hiện trên các Bit

Các Toán tử bit được thực hiện trên các toán hạng. Dưới bảng các Toán tử trên bit

Toán tử Giải thích Ví dụ Kết quả
& AND (10==20 & 20==33) false
| OR (10==20 | 20==33) false
^ XOR (10==20 ^ 20==33) false
~ NOT (phủ định) (~10) -10
<< Dịch trái (10<<2) 40
>> Dịch phải (10>>2) 2
>>> Bitwise Right Shift with Zero (10>>>2) 2

4. Các toán tử logic

Dưới đây là bảng Toán tử logic.

Toán tử Tên Ví dụ Kết quả
! Phủ định !5 0
&& Phép và 5 > 4 && 5 > 6 0
|| Phép hoặc 5 > 4 || 5 > 6 1

5. Các toán tử gán

Dưới đây là Toán tử gán

Toán tử Ví dụ Tương đương với
= x = 5 Gán 5 cho x
+= x += 5 x = x + 5
-= x -= 5 x = x – 5
*= x *= 5 x = x * 5
/= x /= 5 x = x / 5
%= x %= 5 x = x % 5

Các toán tử đặt biệt

5. Toán tử typeof

Toán tử typeof trả về kiểu dữ liệu của biến, đối tượng, hàm hoặc biểu thức.

typeof "John"                 // Returns string 
typeof 3.14                   // Returns number
typeof NaN                    // Returns number
typeof false                  // Returns boolean
typeof [1, 2, 3, 4]           // Returns object
typeof {name:'John', age:34}  // Returns object
typeof new Date()             // Returns object
typeof function () {}         // Returns function
typeof myCar                  // Returns undefined (if myCar is not declared)
typeof null                   // Returns object

Xem ví dụ

Từ ví dụ ta có thể thấy:

  • Kiểu dữ liệu của NaN là number.
  • Kiểu dữ liệu của array là object.
  • Kiểu dữ liệu của null là object.
  • Kiểu dữ liệu của một đối tượng ngày tháng là object.
  • Kiểu dữ liệu của biến chưa xác định là undefined.

Nếu đối tượng là kiểu dữ liệu mảng hoặc date bạn không thể sử dụng toán tử typeof .

6. Toán tử delete

Toán tử delete dùng để xóa thuộc tính của đối tượng

  • Toán tử delete sẽ xóa cả giá trị của thuộc tính và chính thuộc tính đó, thuộc tính đã bị xóa sẽ không thể được sử dụng trước khi được thêm lại vào đối tượng.
  • Toán tử delete được thiết kế để sử dụng với một thuộc tính của đối tượng do đó nó sẽ không có hiệu quả đối với biến hoặc hàm.
  • Toán tử delete không nên được sử dụng đối với thuộc tính được khai báo trước của đối tượng Javascript, nó có thể khiến chương trình của bạn bị lỗi.
var person = {firstName:"John", lastName:"Doe", age:50, eyeColor:"blue"};
delete person.age;   // or delete person["age"]; 

Xem ví dụ

Chú ý: Không nên sử dụng toán tử delete đối với thuộc tính đối tượng JavaScript được xác định trước. Nó có thể làm hỏng ứng dụng của bạn.

7. Toán tử in

Toán tử in trả về true nếu thuộc tính đang sử dụng nằm trong đối tượng đang sử dụng, ngược lại false:

// Arrays
var cars = ["Saab", "Volvo", "BMW"];
"Saab" in cars          // Returns false (specify the index number instead of value)
0 in cars               // Returns true
1 in cars               // Returns true
4 in cars               // Returns false (does not exist)
"length" in cars        // Returns true  (length is an Array property)

// Objects
var person = {firstName:"John", lastName:"Doe", age:50};
"firstName" in person   // Returns true
"age" in person         // Returns true

// Predefined objects
"PI" in Math            // Returns true
"NaN" in Number         // Returns true
"length" in String      // Returns true

Xem ví dụ

8. Toán tử instaceof

Toán tử instanceof trả về true nếu đối tượng được đang sử dụng là một thể hiện của đối tượng đang sử dụng:

var cars = ["Saab", "Volvo", "BMW"];

cars instanceof Array;          // Returns true
cars instanceof Object;         // Returns true
cars instanceof String;         // Returns false
cars instanceof Number;         // Returns false

Xem ví dụ

9. Toán tử void
The void Operator sẽ thực hiện một câu lệnh hay một biểu thức và trả về Fasle. Ví dụ sử dụng void(0) trong thẻ a để vô hiệu hóa link tránh việc tải lại trang.

<a href="javascript:void(0);">
  Useless link
</a>

<a href="javascript:void(document.body.style.backgroundColor='red');">
  Click me to change the background color of body to red
</a>

Xem ví dụ