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

Toán tử JavaScript:So sánh và Bình đẳng

Lần đầu tiên chúng tôi gặp các toán tử khi chúng tôi còn là những đứa trẻ học số học ở trường tiểu học. Toán tử là các ký hiệu ở giữa hai toán hạng. Trong phát triển web, chúng tôi sử dụng các toán tử để so sánh hai giá trị nhằm xác định xem một biểu thức là đúng hay sai. Trong bài viết này, chúng ta sẽ xem xét các toán tử so sánh (a.k.a quan hệ) và bình đẳng - chúng là hai loại toán tử phổ biến nhất mà bạn sẽ gặp trong JavaScript.

Toán tử so sánh

Sẽ có lúc trong việc tạo logic để giải quyết các vấn đề mà bạn sẽ cần sử dụng các toán tử so sánh hoặc quan hệ để hiển thị một thứ gì đó ra màn hình một cách có điều kiện. Hãy xem xét những cái phổ biến nhất mà bạn sẽ thấy trong mã của mình. Đây là đối tượng mà chúng tôi sẽ sử dụng cho một vài toán tử tiếp theo:

  1. trong - sử dụng in để xem có thuộc tính nào trong đối tượng của bạn hay không:
const cityData =  {
     city: "San Jose",
     state: "California",
     area: 181.36,
     land: 178.24,
     water: 3.12,
     urban: 342.27,
     metro: 2694.61,
     elevation: 82,
     population: 1021795,
     timezone: "Los_Angeles/Pacific",
     website: "www.sanjoseca.gov"
}
console.log("metro" in cityData); //true
console.log("country" in cityData); //false
  1. instanceof - sử dụng instanceof toán tử để hỏi liệu một đối tượng có phải là một phiên bản của một lớp hay hàm tạo hay không.
  function Class(subject, teacher, numStudents) {
     this.subject = subject;
     this.teacher = teacher;
     this.numStudents = numStudents;
   }
   const classroom = new Class('Academic Geometry', 'Jane Doe', 24);
 
   console.log(classroom instanceof Class);
   // expected output: true
 
   console.log(classroom instanceof Object);
   // expected output: true
  1. Nhỏ hơn (<), Nhỏ hơn hoặc bằng (<=) - Toán tử so sánh trả về true trong câu lệnh điều kiện nếu toán hạng A nhỏ hơn toán hạng B. Chúng ta thấy nó phổ biến nhất khi tạo vòng lặp for:
 	for(let i = 1; i <= n; i++) {
        // code here
    	}
	for(let i = 0; i < arr.length; i++) {
        // code here
   	}
  1. Lớn hơn (>), Lớn hơn hoặc bằng (> =) - Toán tử so sánh trả về true trong câu lệnh điều kiện nếu toán hạng A lớn hơn toán hạng B. Nó được sử dụng khá thường xuyên khi chúng ta cố gắng tìm số lớn nhất trong một mảng:
let maximum = -Infinity;
   	for(let i = 0; i < arr.length; i++) {
     	  if(arr[i] >= maximum) {
          maximum = arr[i];
        }
      }

Lưu ý: > =không giống với =>. Cái sau được sử dụng cho các hàm mũi tên lớn trong cú pháp JavaScript ES6.

Các nhà điều hành bình đẳng

Tương tự như các toán tử so sánh, các toán tử bình đẳng cũng đánh giá một giá trị Boolean để tuyên bố một biểu thức có đúng hay không.

Bình đẳng (==) đấu với Danh tính (===) - Khi chúng ta thấy các dấu bằng (=) trong JavaScript, một dấu bằng là một toán tử gán chứ không phải là những gì chúng ta đã quen khi học toán.

Hai dấu bằng đúng là một toán tử bằng nhau. Nó chỉ kiểm tra xem các giá trị có bằng nhau hay không bằng cách cố gắng chuyển đổi các giá trị sang kiểu dữ liệu của người khác. Đây được gọi là kiểu cưỡng chế.

console.log(8 == '8'); //true

Tương tự, nếu chúng ta thấy dấu gạch ngang / dấu chấm than cùng với một dấu bằng thì (! =) , được gọi là toán tử bất đẳng thức, nó so sánh hai giá trị để xem liệu các toán hạng có bằng số hay không. Nó không kiểm tra loại.

console.log(8 != '4'); //true

Ngược lại, toán tử nhận dạng, ba dấu bằng (===) , kiểm tra kiểu và số khi so sánh hai giá trị.

81% người tham gia cho biết họ cảm thấy tự tin hơn về triển vọng công việc công nghệ của mình sau khi tham gia chương trình đào tạo. Kết hợp với bootcamp ngay hôm nay.

Sinh viên tốt nghiệp bootcamp trung bình dành ít hơn sáu tháng để chuyển đổi nghề nghiệp, từ khi bắt đầu bootcamp đến khi tìm được công việc đầu tiên của họ.

console.log(8 === '8'); //false
console.log(8 === 8); //true

Cũng giống như toán tử bất đẳng thức, toán tử nonidentity (! ==) kiểm tra xem các toán hạng có không bằng nhau hay không. Ngoài ra, nó cũng kiểm tra loại. Nếu đúng, điều kiện là true và sẽ trả về true. Nếu không, nó sẽ trả về false.

console.log(8 !== '8'); //true
console.log(8 !== 8); //false



Lời kết

Toán tử so sánh và bình đẳng là điều cần thiết để xây dựng logic trong lập trình. Khi chúng ta so sánh toán hạng bên trái với toán hạng bên phải, chúng ta sử dụng các toán tử bình đẳng để xem các giá trị có bằng nhau về kiểu, không về kiểu, về kiểu và số hay không về kiểu và số. Ngoài ra, chúng tôi sử dụng các toán tử so sánh để trợ giúp logic sẽ hiển thị giao diện người dùng (UI). Khi bạn cảm thấy thoải mái với các toán tử này, hãy xem các toán tử logic, toán tử bậc ba và toán tử bitwise!

Sẵn sàng để biết thêm hướng dẫn về JavaScript?

Kiểm tra những thứ này!

Toán tử bậc ba của JavaScript:Hướng dẫn từng bước

Trường hợp chuyển đổi JavaScript:Hướng dẫn từng bước

Cú pháp JavaScript:Hướng dẫn cho người mới bắt đầu