Boolean

Dữ liệu gốc boolean là loại dữ liệu logic chỉ có hai giá trị: truefalse.

Đối tượng Boolean

Tất cả các giá trị trong JavaScript đều được ngầm hiểu là true hoặc false. Bạn có thể sử dụng đối tượng Boolean để cưỡng ép một giá trị thành boolean true hoặc false, dựa trên trạng thái true hoặc false ngầm ẩn của giá trị đó:

Boolean( "A string literal" );
> true

Các giá trị dẫn đến false bao gồm 0, null, undefined, NaN, một chuỗi trống (""), một giá trị bị bỏ qua và một boolean false. Tất cả các giá trị khác đều dẫn đến true.

Boolean( NaN );
> false

Boolean( -0 );
> false

Boolean( 5 );
> true

Boolean( "false" ); // the value `"false"` is a string, and therefore implicitly true.
> true

Tránh dùng đối tượng Boolean làm hàm khởi tạo. Phương thức này tạo ra một đối tượng chứa giá trị boolean, không phải giá trị gốc boolean mà bạn có thể mong đợi:

const falseBoolean = Boolean( 0 );
const falseObject = new Boolean( 0 );

console.log( falseBoolean  );
> false

console.log( falseObject  );
> Boolean { false }

falseObject.valueOf();
> false

Vì mọi đối tượng vốn đã đáng tin cậy, nên đối tượng boolean kết quả luôn đánh giá lỏng lẻo là true, ngay cả khi đối tượng đó chứa giá trị false:

const falseBoolean = Boolean( 0 );
const falseObject = new Boolean( 0 );

console.log( falseBoolean == true );
> false

console.log( falseObject == true );
> true

Kiểm tra kiến thức

Phương thức nào sau đây trả về false?

Chuỗi trống
0
Null.
"none".