Primitif boolean adalah jenis data logis yang hanya memiliki dua nilai: true
dan
false
.
Objek boolean
Semua nilai dalam JavaScript secara implisit adalah true
atau false
. Objek Boolean
dapat digunakan untuk memaksa nilai ke
Boolean true
atau false
, berdasarkan status benar atau salah implisit dari
nilai:
Boolean( "A string literal" );
> true
Nilai yang menghasilkan false
mencakup 0
, null
, undefined
, NaN
, dan nilai kosong
string (""
), nilai yang dihilangkan, dan boolean false
. Semua nilai lainnya menghasilkan
di true
.
Boolean( NaN );
> false
Boolean( -0 );
> false
Boolean( 5 );
> true
Boolean( "false" ); // the value `"false"` is a string, and therefore implicitly true.
> true
Hindari penggunaan objek Boolean
sebagai konstruktor. Class ini membuat objek
berisi nilai boolean, bukan primitif boolean yang mungkin Anda harapkan:
const falseBoolean = Boolean( 0 );
const falseObject = new Boolean( 0 );
console.log( falseBoolean );
> false
console.log( falseObject );
> Boolean { false }
falseObject.valueOf();
> false
Karena semua objek pada dasarnya benar,
objek boolean yang dihasilkan selalu dievaluasi secara longgar ke true (benar), meskipun
berisi nilai false
:
const falseBoolean = Boolean( 0 );
const falseObject = new Boolean( 0 );
console.log( falseBoolean == true );
> false
console.log( falseObject == true );
> true
Menguji pemahaman Anda
Manakah dari opsi berikut yang menampilkan false
?
"none"
.0
Null
.