บูลีน

พื้นฐานบูลีนเป็นประเภทข้อมูลเชิงตรรกะที่มีเพียง 2 ค่าคือ true และ false

ออบเจ็กต์บูลีน

ค่าทั้งหมดใน JavaScript คือ true หรือ false โดยปริยาย ออบเจ็กต์ Boolean ที่ใช้เพื่อบังคับค่าให้เป็น true หรือ false บูลีนตามสถานะจริงหรือเท็จโดยนัย ค่า:

Boolean( "A string literal" );
> true

ค่าที่เกิด false ได้แก่ 0, null, undefined, NaN ซึ่งเป็นค่าว่าง string ("") ค่าที่ละเว้น และบูลีน false ผลลัพธ์สำหรับค่าอื่นๆ ทั้งหมด ใน true

Boolean( NaN );
> false

Boolean( -0 );
> false

Boolean( 5 );
> true

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

หลีกเลี่ยงการใช้ออบเจ็กต์ Boolean เป็นเครื่องมือสร้าง สร้างออบเจ็กต์ ที่มีค่าบูลีน ไม่ใช่ค่าพื้นฐานบูลีนที่คุณอาจคาดหวังไว้ ดังนี้

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

console.log( falseBoolean  );
> false

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

falseObject.valueOf();
> false

เนื่องจากวัตถุทั้งหมดนั้นจริงใจโดยธรรมชาติ ออบเจ็กต์บูลีนที่ได้จะประเมินค่าเป็นจริงอย่างหลวมๆ เสมอ มีค่า false:

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

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

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

ตรวจสอบความเข้าใจ

ข้อใดต่อไปนี้แสดง false

สตริงว่าง
0
Null
"none"