1. เท่ากับ == และไม่เท่ากัน! =
แปลงตัวถูกดำเนินการก่อนแล้วเปรียบเทียบความเท่าเทียมกัน
เมื่อแปลงชนิดข้อมูลที่แตกต่างกันความเท่าเทียมและความไม่เท่าเทียมกันปฏิบัติตามกฎต่อไปนี้:
1.1 หากตัวถูกดำเนินการเป็นบูลีนให้แปลงเป็นค่าตัวเลขก่อนที่จะเปรียบเทียบความเท่าเทียมกัน --- เท็จกับ 0 และจริงเป็น 1;
1.2 ถ้าตัวถูกดำเนินการหนึ่งเป็นสตริงและอีกอันคือค่าตัวเลขให้แปลงสตริงเป็นค่าตัวเลขก่อนเปรียบเทียบความเท่าเทียมกัน
1.3 หากตัวถูกดำเนินการหนึ่งเป็นวัตถุและอีกอย่างหนึ่งไม่ได้เป็นวิธีการ valueof () ของวัตถุที่เรียกว่าและค่าประเภทพื้นฐานที่ได้รับจะถูกเปรียบเทียบตามกฎก่อนหน้า
1.4 null และ undefined เท่ากัน
1.5 null และ undefined ไม่สามารถแปลงเป็นค่าอื่น ๆ ก่อนที่จะเปรียบเทียบความเท่าเทียมกัน
1.6 หากมีตัวดำเนินการที่เป็น NAN ตัวดำเนินการที่เท่าเทียมจะส่งกลับเท็จและตัวดำเนินการที่ไม่เท่ากันจะส่งคืนจริง แม้ว่าตัวถูกดำเนินการทั้งสองจะเป็นน่าน แต่ก็เหมือนกัน
1.7 หากตัวถูกดำเนินการทั้งสองเป็นวัตถุให้เปรียบเทียบว่าพวกเขาชี้ไปที่วัตถุเดียวกัน
| การแสดงออก | ค่า |
| null == ไม่ได้กำหนด | จริง |
| "Nan" == Nan | เท็จ |
| 5 == Nan | เท็จ |
| Nan == Nan | เท็จ |
| Nan! = Nan | จริง |
| 5 == "5" | จริง |
| เท็จ == 0 | จริง |
| จริง == 1 | จริง |
| จริง == 2 | แฟลช |
| ไม่ได้กำหนด == 0 | เท็จ |
| null == 0 | เท็จ |
2. สอดคล้องกัน === และแตกต่างกันโดยสิ้นเชิง! ==
ตัวถูกดำเนินการสองตัวกลับมาอย่างเท่าเทียมกันโดยไม่มีการแปลงและเท็จถ้าไม่เท่าเทียมกัน
undefined == null; // true
undefined === null; // false
คำอธิบายโดยละเอียดข้างต้นของผู้ให้บริการที่เท่าเทียมกันของ JS คือเนื้อหาทั้งหมดที่ฉันแบ่งปันกับคุณ ฉันหวังว่าคุณจะให้ข้อมูลอ้างอิงและฉันหวังว่าคุณจะสนับสนุน wulin.com มากขึ้น