JavaScript เป็นหนึ่งในภาษาการเขียนโปรแกรมที่ได้รับความนิยมที่สุดในยุคปัจจุบัน ด้วยการใช้งานที่หลากหลายจากการพัฒนาเว็บไซต์ส่วนหน้า การพัฒนาแอปพลิเคชั่นมือถือ ไปจนถึงระบบฝั่งเซิร์ฟเวอร์ หนึ่งในพื้นฐานที่ทุกคนที่เริ่มต้นเรียน JavaScript ควรเข้าใจคือแนวคิดของค่าความจริง (Truthy) และค่าเท็จ (Falsy) ซึ่งเป็นพื้นฐานสำคัญในการทำความเข้าใจการเปรียบเทียบและโครงสร้างการควบคุมหลายๆ แบบในภาษา JavaScript
ใน JavaScript ทุกค่าจะมีค่าความจริง (truthiness) ของมันเอง ในบริบทของการเปรียบเทียบหรือตรวจสอบเงื่อนไข ค่าใดๆ ก็ตามสามารถถูกประเมินเป็น "จริง" หรือ "เท็จ" ได้ ถึงแม้ว่าค่านั้นไม่ใช่ Boolean โดยตรง คำว่า "Truthy" หมายถึงค่าที่ถูกประเมินเป็นจริง ในขณะที่ "Falsy" หมายถึงค่าที่ถูกประเมินเป็นเท็จ
มีค่าบางอย่างที่ JavaScript มองว่าเป็นเท็จเมื่อนำไปตรวจสอบในบริบท Boolean ซึ่งได้แก่:
1. `false` - ค่าทางเข้าออกของ Boolean ที่เป็นเท็จ
2. `0` - ศูนย์จำนวน
3. `-0` - ศูนย์เชิงลบ
4. `0n` - BigInt ศูนย์
5. `""` - สตริงว่าง
6. `null` - การไม่มีข้อมูล
7. `undefined` - ค่าที่ไม่ได้ถูกกำหนด
8. `NaN` - ค่าทางคณิตศาสตร์ที่ไม่ใช่ตัวเลข
ตัวอย่างโค้ด:
if (0) {
console.log("This will not execute because 0 is falsy.");
}
if ("") {
console.log("This will not execute because an empty string is falsy.");
}
if (null) {
console.log("This will not execute because null is falsy.");
}
ทุกค่าที่ไม่ได้เป็นหนึ่งในค่าที่ระบุไว้ด้านบนจะถือเป็น Truthy ตัวอย่างของค่า Truthy ได้แก่:
- สตริงที่ไม่ได้ว่าง เช่น `"hello"`
- เลขที่ไม่ใช่ศูนย์ เช่น `42` หรือ `-42`
- อาร์เรย์ที่ว่าง `[]`
- อ็อบเจ็กต์ที่ว่าง `{}`
- ทุกฟังก์ชันที่นิยามแล้ว
ตัวอย่างโค้ด:
if ("non-empty string") {
console.log("This will execute because a non-empty string is truthy.");
}
if (1) {
console.log("This will execute because 1 is truthy.");
}
if ([]) {
console.log("This will execute because an empty array is truthy.");
}
ความเข้าใจเกี่ยวกับ Truthy และ Falsy เป็นสิ่งสำคัญเมื่อคุณต้องเขียนโค้ดที่เกี่ยวข้องกับการตรวจสอบเงื่อนไข เช่น ในการใช้คำสั่ง `if` หรือการใช้ตัวดำเนินการเชิงตรรกะ จำเป็นอย่างยิ่งที่จะต้องเข้าใจว่าค่าใดจะถูกพิจารณาเป็นจริงหรือเท็จ
อีกทั้ง การแปลงค่าความจริงยังถูกใช้บ่อยในงานที่ต้องมีการตรวจค่าอันหลากหลาย แต่ไม่ต้องการให้ประมวลผลซับซ้อนเกินไป เช่น การตรวจสอบว่าตัวแปรมีค่าหรือไม่:
let userInput;
if (userInput) {
console.log("User has provided input.");
} else {
console.log("User input is empty or undefined.");
}
ในกรณีนี้ ถ้า `userInput` เป็น Falsy โปรแกรมจะเข้าสู่บล็อก `else` แทนที่จะเป็น `if`
การเข้าใจการทำงานของ Truthy และ Falsy values เป็นพื้นฐานสำคัญในการเรียนรู้ JavaScript และการเขียนโปรแกรมในหลักการนี้ช่วยให้โปรแกรมเมอร์สามารถเขียนโค้ดที่มีความยืดหยุ่นและมีประสิทธิภาพได้มากขึ้น ถึงแม้ว่าแนวคิดนี้จะดูเรียบง่าย แต่สามารถสร้างความแตกต่างที่สำคัญในวิธีที่คุณพัฒนาและตรวจสอบโปรแกรมของคุณ
หากคุณสนใจที่จะเรียนรู้เพิ่มเติมเกี่ยวกับการเขียนโปรแกรมใน JavaScript หรือภาษาอื่นๆ การลงเรียนคอร์สที่สอนโดยผู้เชี่ยวชาญก็เป็นอีกทางเลือกที่น่าสนใจเสมอครับ ที่ EPT เรามีหลักสูตรหลากหลายที่สามารถช่วยให้คุณพัฒนาทักษะในด้านนี้ได้อย่างลึกซึ้งและมีประสิทธิภาพ
หมายเหตุ: ข้อมูลในบทความนี้อาจจะผิด โปรดตรวจสอบความถูกต้องของบทความอีกครั้งหนึ่ง บทความนี้ไม่สามารถนำไปใช้อ้างอิงใด ๆ ได้ ทาง EPT ไม่ขอยืนยันความถูกต้อง และไม่ขอรับผิดชอบต่อความเสียหายใดที่เกิดจากบทความชุดนี้ทั้งทางทรัพย์สิน ร่างกาย หรือจิตใจของผู้อ่านและผู้เกี่ยวข้อง
หากเจอข้อผิดพลาด หรือต้องการพูดคุย ติดต่อได้ที่ https://m.me/expert.Programming.Tutor/
Tag ที่น่าสนใจ: java c# vb.net python c c++ machine_learning web database oop cloud aws ios android
หากมีข้อผิดพลาด/ต้องการพูดคุยเพิ่มเติมเกี่ยวกับบทความนี้ กรุณาแจ้งที่ http://m.me/Expert.Programming.Tutor
085-350-7540 (DTAC)
084-88-00-255 (AIS)
026-111-618
หรือทาง EMAIL: NTPRINTF@GMAIL.COM
Copyright (c) 2013 expert-programming-tutor.com. All rights reserved. | 085-350-7540 | 084-88-00-255 | ntprintf@gmail.com