บูลีน JavaScript แสดงถึงหนึ่งในสองค่า: จริง หรือ เท็จ
บ่อยครั้งในการเขียนโปรแกรม คุณจะต้องมีประเภทข้อมูลที่สามารถมีได้เพียงประเภทเดียวเท่านั้น ของสองค่า เช่น
ใช่ไม่ใช่
เปิดปิด
ถูกผิด
ด้วยเหตุนี้ JavaScript จึงมีประเภทข้อมูล บูลีน ก็สามารถเท่านั้น รับค่า จริง หรือ เท็จ
คุณสามารถใช้ฟังก์ชัน Boolean()
เพื่อดูว่ามีนิพจน์ (หรือตัวแปร) หรือไม่ จริง:
Boolean(10 > 9)
ลองด้วยตัวคุณเอง →
<!DOCTYPE html>
<html>
<body>
<h1>JavaScript Booleans</h1>
<p>Display the value of Boolean(10 > 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 > 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 จะเป็นค่าดั้งเดิมที่สร้างขึ้นจากตัวอักษร:
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
ข้อมูลอ้างอิงประกอบด้วยคำอธิบายและตัวอย่างของคุณสมบัติและวิธีการบูลีนทั้งหมด