.
ภาพถ่ายโดย Matt Popovich บน Unsplash
- สัญลักษณ์เท่ากับตัวเดียว (=) เรียกอีกอย่างว่าตัวดำเนินการกำหนด
- พูดง่ายๆ เมื่อฉันพูดว่า “ a = 5 “ หมายความว่าฉันกำลังใส่ค่า '5' ไว้ในตัวแปร ' a '
- ตอนนี้เมื่อฉันพยายามพิมพ์ค่าของ 'a' ฉันจะได้ค่า '5'
const a = 5;
console.log(a); // 5
คู่ของเครื่องหมายเท่ากับ ( == ) เมื่อนำมารวมกันจะทำหน้าที่เป็นตัวดำเนินการเปรียบเทียบ
ซึ่งหมายความว่าจะตรวจสอบความเท่าเทียมกันของค่าสองค่าที่วางอยู่ทางด้านซ้ายและด้านขวาของตัวดำเนินการนี้
const a = 5;
const b = "5";
console.log(a == b); // true
ซึ่งหมายความว่าตัวดำเนินการความเท่าเทียมกัน ( == ) นี้จะไม่พิจารณาประเภทข้อมูลในขณะที่ตรวจสอบความเท่าเทียมกันของค่า โดยจะเปรียบเทียบเฉพาะค่าและหากค่าเหมือนกัน ผลลัพธ์จะเป็น 'จริง' หรือเป็น 'เท็จ'
แต่ก่อนที่การเปรียบเทียบจะเกิดขึ้นจริง
การบังคับหมายถึงการแปลงข้อมูลประเภทหนึ่งไปเป็นอีกประเภทหนึ่งโดยอัตโนมัติ
ขั้นแรก ค่าหนึ่งจะถูกแปลงจากชนิดข้อมูลหนึ่งเป็นชนิดข้อมูลที่เหมาะกับค่าอื่น ตัวอย่างเช่น: ประเภทข้อมูลสตริงจะถูกแปลงเป็นประเภทข้อมูลตัวเลข
หลังจากการบีบบังคับ การเปรียบเทียบระหว่างค่าทั้งสองจะเกิดขึ้น
ด้วยเหตุนี้ ตัวดำเนินการนี้จึงเรียกอีกอย่างว่าตัวดำเนินการความเสมอภาคแบบหลวม
- หากเราต้องการเปรียบเทียบประเภทข้อมูลในขณะที่ตรวจสอบความเท่าเทียมกันในค่า เราก็มีตัวดำเนินการเท่ากับสามตัว ( === ) หรือที่เรียกว่าตัวดำเนินการความเท่าเทียมกันแบบเข้มงวด
- เมื่อใช้ ตัวดำเนินการนี้จะตรวจสอบความเท่าเทียมกันในประเภทข้อมูลของค่าต่างๆ พร้อมกับความเท่าเทียมกันของค่า
- หากค่าเป็นประเภทข้อมูลที่แตกต่างกัน จะส่งผลให้เป็น 'เท็จ'
const a = 5;
const b = "5";
console.log(a === b) // false
การบังคับไม่ได้เกิดขึ้นที่นี่
ตัวดำเนินการนี้จะตรวจสอบความเท่าเทียมกันของประเภทข้อมูลพร้อมกับค่า ตัวดำเนินการนี้เรียกอีกอย่างว่าตัวดำเนินการประเภทเข้มงวด