Boolean

Primitif boolean adalah jenis data logis yang hanya memiliki dua nilai: true dan false.

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
String kosong
Null.