Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Javascript

Double Equals (==) vs Triple Equals (===) ใน JavaScript

ใน JavaScript คุณอาจสังเกตเห็นว่าคุณมีสองวิธีในการเปรียบเทียบค่าที่เท่ากัน:

  • ค่าปกติ: == (สองเท่า)
  • เข้มงวดเท่ากับ: === (สามเท่า)

ความแตกต่างระหว่างสองเท่า (== ) และเท่ากับสามเท่า (=== ) คือ:

  • ค่าปกติเท่ากับเปรียบเทียบค่าและละเว้นค่า ประเภท
  • เข้มงวดเท่ากับเปรียบเทียบทั้งสองค่า และ ประเภทค่า

ตัวอย่างเช่น:

// returns true
5 == "5"
// returns false
5 === "5"

ในสองตัวอย่างข้างต้น ค่าทางด้านซ้ายคือ ตัวเลข ประเภทค่า ทางด้านขวาคือ สตริง ประเภทค่า (ระบุโดยเครื่องหมายคำพูด ' ' )

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

ดังนั้นตัวอย่างทั้งสองนี้จึงประเมิน/ส่งคืน จริง เนื่องจากประเภทค่าที่ด้านใดด้านหนึ่งของค่าเท่ากับที่เข้มงวดจะเหมือนกัน:

// returns true
5 === 5
// returns true
"5" === "5"