Computer >> Máy Tính >  >> Lập trình >> Javascript

Double Equals (==) so với Triple Equals (===) trong JavaScript

Trong JavaScript, bạn có thể nhận thấy rằng bạn có hai cách để so sánh bình đẳng giữa các giá trị:

  • Thông thường bằng: == (gấp đôi bằng)
  • Chặt chẽ bằng: === (ba bằng)

Sự khác biệt giữa double =(== ) và ba bằng (=== ) là:

  • Giá trị thông thường bằng chỉ so sánh các giá trị và bỏ qua giá trị loại
  • Các dấu bằng nghiêm ngặt so sánh cả hai giá trị các loại giá trị.

Ví dụ:

// returns true
5 == "5"
// returns false
5 === "5"

Trong hai ví dụ trên, giá trị ở bên trái là số loại giá trị, loại bên phải là chuỗi loại giá trị (được chỉ định bởi dấu ngoặc kép ' ' ).

Cả hai đều có giá trị năm nhưng một là giá trị số, còn lại là giá trị chuỗi. Nghiêm bằng === chỉ đánh giá là true nếu cả hai giá trị và loại giá trị giống nhau.

Vì vậy, cả hai ví dụ này đều đánh giá / trả về true vì kiểu giá trị của chúng ở hai bên của dấu bằng nghiêm ngặt là giống nhau:

// returns true
5 === 5
// returns true
"5" === "5"