typeof ค่าจริง/เท็จ และ == กับ ===
ใช้ typeof อย่างปลอดภัย รู้จักค่าที่ตีความเป็นจริง/เท็จ และเปรียบเทียบค่าอย่างถูกต้องด้วย ===
typeof ค่าจริง/เท็จ และ == กับ === เป็นบทเรียน JavaScript Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 2 จากทั้งหมด 3 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน JavaScript Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส JavaScript Academy มีบทเรียนทั้งหมด 3 บทเรียน
บทนำ
เป้าหมาย: เรียนรู้ว่าการตรวจชนิดข้อมูลใช้ระบุชนิดอย่างไร ค่าใดเป็นค่าจริงหรือค่าเท็จ และควรใช้ === แทน == เมื่อใด
- พื้นฐานการตรวจชนิดข้อมูล
- ค่าจริงเทียบกับค่าเท็จ
- การเท่ากันแบบเคร่งครัด

สำรวจการตรวจชนิดข้อมูล
การตรวจชนิดข้อมูลทำงานได้รวดเร็วกับชนิดข้อมูลพื้นฐาน โปรดสังเกตพฤติกรรมตกค้าง: การตรวจชนิดของค่าว่างส่งคืนค่า "ออบเจ็กต์"
// typeof returns a string describing the type
console.log(typeof 42);
// "number"
console.log(typeof "hi");
// "string"
console.log(typeof true);
// "boolean"
console.log(typeof undefined);
// "undefined"
console.log(typeof 10n);
// "bigint"
console.log(typeof Symbol("x"));
// "symbol"
console.log(typeof null);
// "object" (historic quirk)

ค่าจริงเทียบกับค่าเท็จ (แนวคิด)
ค่าที่เป็นเท็จ: 0, -0, 0n, "", ค่าผิด, ค่าว่าง, ค่าไม่ได้กำหนด, NaN ส่วนค่าอื่นทั้งหมดเป็นค่าจริง (เช่น "0", "false", [], {}, ฟังก์ชันเปล่า)

การตรวจสอบค่าจริงเท็จ
ใช้การแปลงเป็นค่าจริงเท็จ(x)หรือเงื่อนไขเพื่อดูว่าค่าหนึ่ง ๆ ทำงานอย่างไรเมื่อใช้ในเงื่อนไข
// Use Boolean(x) or if (x) to test truthiness
console.log(Boolean("0"));
// true (non-empty string)
console.log(Boolean(""));
// false (empty string)
console.log(Boolean([]));
// true (arrays are objects)
console.log(Boolean(0));
// false
console.log(Boolean({}));
// true

ข้อควรระวังของการเท่ากันแบบหลวม
==จะแปลงชนิดข้อมูลโดยอัตโนมัติ ทำให้เกิดการจับคู่ที่สับสนได้ จึงควรหลีกเลี่ยงในการเขียนโค้ดส่วนใหญ่
// == performs type coercion: can be surprising
console.log(0 == false);
// true
console.log("" == 0);
// true
console.log(null == undefined);
// true
console.log("5" == 5);
// true (string coerced to number)

การเท่ากันแบบเคร่งครัด
ใช้ === และ !== เพื่อเปรียบเทียบอย่างคาดเดาได้โดยไม่แปลงชนิดข้อมูล
// === compares without coercion: safer and clearer
console.log(0 === false);
// false
console.log("" === 0);
// false
console.log("5" === 5);
// false
console.log(5 === 5);
// true

แบบทดสอบการเท่ากันแบบเคร่งครัด
ตรวจสอบอย่างรวดเร็ว: การเท่ากันที่ปลอดภัย

สรุปทบทวน
สรุปทบทวน: การตรวจชนิดข้อมูลใช้ระบุชนิดข้อมูลพื้นฐานได้ (โปรดระวังค่าว่าง) คุณได้เรียนรู้ค่าที่เป็นเท็จที่พบบ่อย และเห็นเหตุผลที่ === ชัดเจนกว่า ==

คำถามที่พบบ่อย
บทเรียน “typeof ค่าจริง/เท็จ และ == กับ ===” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “typeof ค่าจริง/เท็จ และ == กับ ===” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส JavaScript Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส JavaScript Academy มีบทเรียนทั้งหมด 3 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “typeof ค่าจริง/เท็จ และ == กับ ===”
ใช้ typeof อย่างปลอดภัย รู้จักค่าที่ตีความเป็นจริง/เท็จ และเปรียบเทียบค่าอย่างถูกต้องด้วย === คุณปฏิบัติ JavaScript Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน JavaScript Academy หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน JavaScript Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 2 จากทั้งหมด 3 บทเรียน
บทเรียน “typeof ค่าจริง/เท็จ และ == กับ ===” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน JavaScript Academy นี้ได้ไหม
ได้ บทเรียน JavaScript Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- ชนิดพื้นฐานกับออบเจ็กต์ และชนิดหลัก
- typeof ค่าจริง/เท็จ และ == กับ ===
- การบังคับชนิด: รูปแบบปลอดภัยเพื่อหลีกเลี่ยงความประหลาดใจ