จาวาสคริปต์บูลีน


สารบัญ

    แสดงสารบัญ

บูลีน JavaScript แสดงถึงหนึ่งในสองค่า: จริง หรือ เท็จ

ค่าบูลีน

บ่อยครั้งในการเขียนโปรแกรม คุณจะต้องมีประเภทข้อมูลที่สามารถมีได้เพียงประเภทเดียวเท่านั้น ของสองค่า เช่น

  • ใช่ไม่ใช่

  • เปิดปิด

  • ถูกผิด

ด้วยเหตุนี้ JavaScript จึงมีประเภทข้อมูล บูลีน ก็สามารถเท่านั้น รับค่า จริง หรือ เท็จ


ฟังก์ชันบูลีน()

คุณสามารถใช้ฟังก์ชัน Boolean() เพื่อดูว่ามีนิพจน์ (หรือตัวแปร) หรือไม่ จริง:

ตัวอย่าง

Boolean(10 > 9)

ลองด้วยตัวคุณเอง →

<!DOCTYPE html>
<html>
<body>

<h1>JavaScript Booleans</h1>
<p>Display the value of Boolean(10 &gt; 9):</p>

<p id="demo"></p>

<script>
document.getElementById("demo").innerHTML = Boolean(10 > 9);
</script>

</body>
</html>

หรือง่ายกว่านั้น:

ตัวอย่าง

(10 > 9)
10 > 9

ลองด้วยตัวคุณเอง →

<!DOCTYPE html>
<html>
<body>

<h1>JavaScript Booleans</h1>
<p>Display the value of 10 &gt; 9:</p>

<p id="demo"></p>

<script>
document.getElementById("demo").innerHTML = 10 > 9;
</script>

</body>
</html>

การเปรียบเทียบและเงื่อนไข

บทเปรียบเทียบ JS ให้ภาพรวมทั้งหมดของตัวดำเนินการเปรียบเทียบ

บทที่ JS Conditions ให้ภาพรวมทั้งหมดของคำสั่งแบบมีเงื่อนไข

นี่คือตัวอย่างบางส่วน:

==

คำอธิบาย: เท่ากับ

ตัวอย่าง:

if (day == "Monday")

>

คำอธิบาย: มากกว่า

ตัวอย่าง:

if (salary > 9000)

<

คำอธิบาย: น้อยกว่า

ตัวอย่าง:

if (age < 18)

ค่าบูลีนของนิพจน์เป็นพื้นฐานสำหรับการเปรียบเทียบและเงื่อนไข JavaScript ทั้งหมด



ทุกสิ่งที่มี "คุณค่า" ย่อมเป็นความจริง

ตัวอย่าง

100

3.14

-15

"Hello"

"false"

7 + 1 + 3.14

ลองด้วยตัวคุณเอง →

<!DOCTYPE html>
<html>
<body>

<h1>JavaScript Booleans</h1>
<p id="demo"></p>

<script>
document.getElementById("demo").innerHTML =
"100 is " + Boolean(100) + "<br>" +
"3.14 is " + Boolean(3.14) + "<br>" +
"-15 is " + Boolean(-15) + "<br>" +
"Any (not empty) string is " + Boolean("Hello") + "<br>" +
"Even the string 'false' is " + Boolean('false') + "<br>" +
"Any expression (except zero) is " + Boolean(1 + 7 + 3.14);
</script>

</body>
</html>

ทุกสิ่งที่ไม่มี "คุณค่า" ถือเป็นเท็จ

ค่าบูลีนของ 0 (ศูนย์) คือ เท็จ:

let x = 0;
Boolean(x);

ลองด้วยตัวคุณเอง →

<!DOCTYPE html>
<html>
<body>

<h1>JavaScript Booleans</h1>
<p>Display the Boolean value of 0:</p>

<p id="demo"></p>

<script>
let x = 0;
document.getElementById("demo").innerHTML = Boolean(x);
</script>

</body>
</html>

ค่าบูลีนของ -0 (ลบศูนย์) คือ เท็จ:

let x = -0;
Boolean(x);

ลองด้วยตัวคุณเอง →

<!DOCTYPE html>
<html>
<body>

<h1>JavaScript Booleans</h1>
<p>Display the Boolean value of  -0:</p>

<p id="demo"></p>

<script>
let x = -0;
document.getElementById("demo").innerHTML = Boolean(x);
</script>

</body>
</html>

ค่าบูลีนของ "" (สตริงว่าง) คือ เท็จ:

let x = "";
Boolean(x);

ลองด้วยตัวคุณเอง →

<!DOCTYPE html>
<html>
<body>

<h1>JavaScript Booleans</h1>
<p>Display the Boolean value of "":</p>

<p id="demo"></p>

<script>
let x = "";
document.getElementById("demo").innerHTML = Boolean("");
</script>

</body>
</html>

ค่าบูลีนของ unknown คือ false:

let x;
Boolean(x);

ลองด้วยตัวคุณเอง →

<!DOCTYPE html>
<html>
<body>

<h1>JavaScript Booleans</h1>
<p>Display the Boolean value of undefined:</p>

<p id="demo"></p>

<script>
let x;
document.getElementById("demo").innerHTML = Boolean(x);
</script>

</body>
</html>

ค่าบูลีน null คือ false:

let x = null;
Boolean(x);

ลองด้วยตัวคุณเอง →

<!DOCTYPE html>
<html>
<body>

<h1>JavaScript Booleans</h1>
<p>Display the Boolean value of null:</p>

<p id="demo"></p>

<script>
let x = null;
document.getElementById("demo").innerHTML = Boolean(x);
</script>

</body>
</html>

ค่าบูลีนของ เท็จ คือ (คุณเดาได้) เท็จ:

let x = false;
Boolean(x);

ลองด้วยตัวคุณเอง →

<!DOCTYPE html>
<html>
<body>

<h1>JavaScript Booleans</h1>
<p>Display the Boolean value of false:</p>

<p id="demo"></p>

<script>
let x = false;
document.getElementById("demo").innerHTML = Boolean(x);
</script>

</body>
</html>

ค่าบูลีนของ NaN คือ เท็จ:

let x = 10 / "Hallo";
Boolean(x);

ลองด้วยตัวคุณเอง →

<!DOCTYPE html>
<html>
<body>

<h1>JavaScript Booleans</h1>
<p>Display the Boolean value of NaN:</p>

<p id="demo"></p>

<script>
let x = 10 / "Hello";
document.getElementById("demo").innerHTML = Boolean(x);
</script>

</body>
</html>

JavaScript Booleans เป็นวัตถุ

โดยปกติแล้ว บูลีน JavaScript จะเป็นค่าดั้งเดิมที่สร้างขึ้นจากตัวอักษร:

let x = false;

แต่บูลีนยังสามารถกำหนดเป็นวัตถุที่มีคำหลัก ใหม่:

let y = new Boolean(false);

ตัวอย่าง

let x = false;
let y = new Boolean(false);

 //
typeof x returns boolean
 //
typeof y returns object

อย่าสร้างวัตถุบูลีน

คำหลัก ใหม่ ทำให้โค้ดซับซ้อนและทำให้ความเร็วในการดำเนินการช้าลง

วัตถุบูลีนสามารถสร้างผลลัพธ์ที่ไม่คาดคิด:

เมื่อใช้ตัวดำเนินการ == x และ y จะ เท่ากัน:

let x = false;
let y = new Boolean(false);

ลองด้วยตัวคุณเอง →

<!DOCTYPE html>
<html>
<body>

<h1>JavaScript Booleans</h1>
<p>Booleans and Boolean objects cannot be safely compared:</p>

<p id="demo"></p>

<script>
let x = false;         // x is a boolean
let y = new Boolean(false);  // y is an object
document.getElementById("demo").innerHTML = (x==y);
</script>

</body>
</html>

เมื่อใช้ตัวดำเนินการ === x และ y ไม่เท่ากัน:

let x = false;
let y = new Boolean(false);

ลองด้วยตัวคุณเอง →

<!DOCTYPE html>
<html>
<body>

<h1>JavaScript Booleans</h1>
<p>Booleans and Boolean objects cannot be safely compared:</p>

<p id="demo"></p>

<script>
let x = false;         // x is a Boolean
let y = new Boolean(false);  // y is an object
document.getElementById("demo").innerHTML = (x===y);
</script>

</body>
</html>

สังเกตความแตกต่างระหว่าง (x==y) และ (x===y)

(x == y) จริงหรือเท็จ?

let x = new Boolean(false);
let y = new Boolean(false);

ลองด้วยตัวคุณเอง →

<!DOCTYPE html>
<html>
<body>

<h1>JavaScript Booleans</h1>
<p>Booleans and Boolean objects cannot be safely compared.</p>

<p id="demo"></p>

<script>
const x = new Boolean(false);
const y = new Boolean(false);
document.getElementById("demo").innerHTML = (x==y);
</script>

</body>
</html>

(x === y) จริงหรือเท็จ?

let x = new Boolean(false);
let y = new Boolean(false);

ลองด้วยตัวคุณเอง →

<!DOCTYPE html>
<html>
<body>

<h1>JavaScript Booleans</h1>
<p>Booleans and Boolean objects cannot be safely compared.</p>

<p id="demo"></p>

<script>
const x = new Boolean(false);
const y = new Boolean(false);
document.getElementById("demo").innerHTML = (x===y);
</script>

</body>
</html>

การเปรียบเทียบวัตถุ JavaScript สองรายการ เสมอ ส่งคืน false

อ้างอิงบูลีนให้สมบูรณ์

หากต้องการข้อมูลอ้างอิงฉบับสมบูรณ์ โปรดไปที่ "เสร็จสมบูรณ์" การอ้างอิงบูลีน JavaScript

ข้อมูลอ้างอิงประกอบด้วยคำอธิบายและตัวอย่างของคุณสมบัติและวิธีการบูลีนทั้งหมด