JavaScript - Các Operator Logic
Xin chào các bạn, những pháp sư JavaScript tương lai! Hôm nay, chúng ta sẽ bắt đầu một chuyến hành trình thú vị vào thế giới của các operator logic. Đừng lo lắng nếu bạn mới bắt đầu học lập trình - tôi sẽ là người hướng dẫn thân thiện của bạn, và chúng ta sẽ khám phá chủ đề này từng bước một. Cuối bài học này, bạn sẽ sử dụng các operator logic như một chuyên gia!
Các Operator Logic trong JavaScript
Các operator logic là những người quyết định trong thế giới lập trình. Chúng giúp chúng ta đưa ra những sự lựa chọn và kiểm soát luồng mã của mình. Trong JavaScript, chúng ta có ba operator logic chính:
Operator | Tên | Mô tả |
---|---|---|
&& | AND | Trả về true nếu cả hai toán tử đều là true |
|| | OR | Trả về true nếu ít nhất một toán tử là true |
! | NOT | Đảo giá trị boolean của toán tử |
Hãy cùng lặn sâu vào từng operator này và xem chúng hoạt động như thế nào!
Operator Logic AND (&&) trong JavaScript
Operator AND (&&) giống như một người cha严格 - nó chỉ trả về true nếu cả hai toán tử của nó đều là true. Nếu bất kỳ toán tử nào là false, kết quả sẽ là false.
Hãy xem một số ví dụ:
let isAdult = true;
let hasID = true;
console.log(isAdult && hasID); // Output: true
let isTired = true;
let hasCoffee = false;
console.log(isTired && hasCoffee); // Output: false
Trong ví dụ đầu tiên, cả isAdult
và hasID
đều là true, vì vậy kết quả là true. Đó giống như nói, "Bạn có thể vào câu lạc bộ nếu bạn là người lớn và bạn có CMND."
Trong ví dụ thứ hai, mặc dù isTired
là true, nhưng hasCoffee
là false, vì vậy kết quả là false. Đó giống như nói, "Tôi sẽ năng suất nếu tôi mệt và tôi có cà phê." Nhưng vì không có cà phê, nên không có năng suất!
Operator Logic OR (||) trong JavaScript
Operator OR (||) thì dễ dãi hơn - nó trả về true nếu ít nhất một trong các toán tử là true. Nó chỉ trả về false nếu cả hai toán tử đều là false.
Dưới đây là một số ví dụ:
let hasCash = true;
let hasCard = false;
console.log(hasCash || hasCard); // Output: true
let isRaining = false;
let isSnowing = false;
console.log(isRaining || isSnowing); // Output: false
Trong ví dụ đầu tiên, hasCash
là true, vì vậy ngay cả khi hasCard
là false, kết quả vẫn là true. Đó giống như nói, "Bạn có thể mua vật phẩm nếu bạn có tiền mặt hoặc thẻ." Có một trong hai là đủ.
Trong ví dụ thứ hai, cả isRaining
và isSnowing
đều là false, vì vậy kết quả là false. Đó giống như nói, "Tôi sẽ ở trong nhà nếu trời mưa hoặc trời snowing." Nhưng vì không có điều kiện nào xảy ra, bạn có thể ra ngoài!
Operator Logic NOT (!) trong JavaScript
Operator NOT (!) là người nổi loạn trong nhóm - nó đảo giá trị boolean của toán tử. Nếu điều gì đó là true, nó sẽ làm cho nó thành false, và ngược lại.
Hãy xem nó trong hành động:
let isSunny = true;
console.log(!isSunny); // Output: false
let isMonday = false;
console.log(!isMonday); // Output: true
Trong ví dụ đầu tiên, isSunny
là true, nhưng !isSunny
là false. Đó giống như nói, "Nó không phải là晴天," khi thực tế nó là.
Trong ví dụ thứ hai, isMonday
là false, nhưng !isMonday
là true. Đó giống như ăn mừng rằng nó không phải là thứ Hai!
Tính ưu tiên của các Operator Logic
Giống như trong toán học, các operator logic có thứ tự ưu tiên. Dưới đây là cách chúng được xếp hạng:
- NOT (!)
- AND (&&)
- OR (||)
Điều này có nghĩa là NOT được đánh giá trước, sau đó là AND, và cuối cùng là OR. Hãy xem một ví dụ:
let a = true;
let b = false;
let c = true;
console.log(a || b && !c); // Output: true
Đây là cách nó được đánh giá:
- Đầu tiên,
!c
được đánh giá:!true
trở thànhfalse
- Sau đó,
b && false
được đánh giá:false && false
làfalse
- Cuối cùng,
a || false
được đánh giá:true || false
làtrue
Vậy kết quả cuối cùng là true.
Đánh giá ngắn mạch
Đánh giá ngắn mạch là một mẹo hay mà JavaScript sử dụng để tối ưu hóa các hoạt động logic. Nó có nghĩa là trong một số trường hợp, JavaScript không cần đánh giá tất cả các phần của một biểu thức logic để xác định kết quả.
Đối với operator AND:
console.log(false && anything); // Output: false
Trong trường hợp này, JavaScript biết rằng nếu toán tử đầu tiên là false, toàn bộ biểu thức sẽ là false, vì vậy nó không cần đánh giá anything
.
Đối với operator OR:
console.log(true || anything); // Output: true
Ở đây, JavaScript thấy rằng toán tử đầu tiên là true, vì vậy nó biết toàn bộ biểu thức sẽ là true, không quan trọng anything
là gì.
Điều này có thể rất hữu ích để tránh lỗi. Ví dụ:
let user = null;
console.log(user && user.name); // Output: null
Nếu user
là null, JavaScript ngắn mạch và trả về null mà không cố gắng truy cập user.name
, điều này sẽ gây ra lỗi.
Và thế là bạn đã hoàn thành khóa học nhanh về các operator logic trong JavaScript! Nhớ rằng, những kí hiệu nhỏ này là những công cụ mạnh mẽ trong bộ công cụ lập trình của bạn. Chúng giúp bạn đưa ra quyết định, kiểm soát luồng mã, và thậm chí ngăn chặn lỗi.
Khi bạn tiếp tục hành trình JavaScript của mình, bạn sẽ thấy mình sử dụng các operator này ngày càng nhiều. Đừng ngại thử nghiệm với chúng - đó là cách bạn sẽ thực sự thành thạo chúng. Chúc các bạn may mắn và các hoạt động logic của bạn luôn mang lại kết quả như mong đợi!
Credits: Image by storyset