Dữ liệu gốc boolean là loại dữ liệu logic chỉ có hai giá trị: true
và false
.
Đố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
?
0
Null
."none"
.