- vừa được xem lúc

Truthy và Falsy trong JavaScript là gì ?

0 0 27

Người đăng: Nguyễn Mạnh Hùng

Theo Viblo Asia

Truthy và Falsy trong JavaScript là gì ?

** Đây là một bài viết ngắn giới thiệu về Truthy và Falsy trong JavaScript, một khái niệm cơ bản và vô cùng quan trọng trong JS mà không phải các bạn mới học nào cũng biết đến. Sau đây, chúng ta cùng tìm hiểu nó là gì, vì sao nó lại quan trọng, và lợi ít khi sử dụng nó nhé.**

Khái niệm Truthy và falsy

  • JavaScript sử dụng Type conversion(chuyển đổi dữ liệu từ kiểu dữ liệu này sang kiểu dữ liệu khác) để ép giá trị bất kỳ thành một giá trị Boolean trong một ngữ cảnh yêu cầu giá trị Boolean.
  • Truthy và falsy là những giá trị mà JavaScript khi ép về kiểu Boolean, hoặc trong một ngữ cảnh Boolean, nó sẽ cho ra giá trị true hoặc false.

Các giá trị được xem là truthy: chuỗi khác rỗng, số khác 0 và tất cả các object. // Bao gồm cả [ ] và { } vì mảng rỗng và chuỗi rỗng vẫn là object.

Ví dụ về giá trị Truthy (nó sẽ bị ép buộc thành True trong ngữ cảnh Boolean và do đó thực thi khối If):

Các giá trị được xem là falsy: undefined, null, false, 0, -0, 0n, NaN, ‘’.

Ví dụ về giá trị Falsy (Nó sẽ bị ép thành kiểu False trong một ngữ cảnh boolean và do đó bỏ qua khối If.

Một ví dụ nữa về Truthy và Falsy trong một ngữ cảnh Boolean. Ở đây toán tử || sẽ trả về toán hạng vế trái nếu vế trái là truthy còn nếu vế trái là falsy thì nó sẽ trả về toán hạng vế phải (cách này thường được dùng để cung cấp giá trị mặc định). Nhưng nó cũng sẽ xãy sau một số vấn đề như bên dưới mà bạn dễ dàng nhận thấy được nếu bạn coi 0, ‘’, NaN là hợp lệ. Như person.point ở đây có giá trị 0 (falsy) nên nó sẽ trả về toán hạng bên phải là undefined point gây ra kết quả không mong muốn. Cách khắc phục, nullish coalescing operator (??) là một tính năng mới được giới thiệu trong ES11(ECMAScript 2020). Theo định nghĩa của MDN ?? là một toán tử logic sẽ trả về toán hạng bên phải nếu vế trái là null hoặc undefined, và nếu không thì sẽ trả về toán hạn bên trái của nó. Như vậy nếu giá trị là 0, ‘’, NaN thì nó vẫn sẽ chấp nhận là các giá trị hợp lệ.

Và đó là sơ lược về Truthy và falsy trong JavaScript, các bạn có thể tìm hiểu thêm tại đây https://developer.mozilla.org/en-US/docs/Web/JavaScript .

Bình luận

Bài viết tương tự

- vừa được xem lúc

2021, chúng ta cần tối ưu hóa việc tải hình ảnh trên web như nào?

Rất chào các bạn,. Như các bạn đã biết, trong kỉ nguyên công nghệ, song song với sự sinh ra dày đặc của các trang web mới cũng là sự biến mất của những trang web "lạc hậu" hay hoạt động kém hiệu quả.

0 0 54

- vừa được xem lúc

Cách mình "hack" được vào hẹ thống của SMAS để xem điểm.

Cách mà mình "hack" được vào hệ thống của SMAS. Thật ra dùng từ hack cũng không đúng lắm, chỉ là một vài trick để lừa hệ thống mà thôi.

0 0 138

- vừa được xem lúc

Giải thích một số JAVASCRIPT ARRAY METHOD với EMOJIS

Như chúng ta đã biết, Array trong JS có rất nhiều method tiện dụng có thể hỗ trợ chúng ta. Sau đây là một số method thông dụng được giải thích bằng các emoji. Thêm một hoặc nhiều phần tử vào sau mảng. livestock.

0 0 42

- vừa được xem lúc

Testing trong Javascript với Jest (Phần 1)

Hello 500 anh em, lại là mình đây. Chú bé coder yêu màu tím thích màu hồng và ghét sự giả dối đây .

0 0 265

- vừa được xem lúc

Áp dụng kiến trúc 3 Layer Architecture vào project NodeJS

The problem encountered. Các framework nodejs phổ biết như Express cho phép chúng ta dễ dàng tạo ra Resful API xử lí các request từ phía client một cách nhanh chóng và linh hoạt.

0 0 77

- vừa được xem lúc

Một số String methods cần biết trong javascript

String là một trong những phần quan trọng nhất trong javascript, ngoài những methods hay dùng như trim, concat, subString, toUpperCase, toLowerCase; Javascript còn cung cấp cho chúng ta rất nhiều methods hữu ích khác để thao tác và giải quyết các vấn đề dễ dàng hơn khi làm việc với String. Mặc dù nh

0 0 35