จัสมินมีตัวจับคู่toBeและtoEqual. หากฉันมีวัตถุเช่นนี้:
function Money(amount, currency){
this.amount = amount;
this.currency = currency;
this.sum = function (money){
return new Money(200, "USD");
}
}
และลองเปรียบเทียบnew Money(200, "USD")และผลลัพธ์ของผลรวมตัวจับคู่ในตัวเหล่านี้จะไม่ทำงานตามที่คาดไว้ ฉันได้จัดการเพื่อใช้วิธีแก้ปัญหาตามequalsวิธีการที่กำหนดเองและตัวจับคู่แบบกำหนดเอง แต่ดูเหมือนจะได้ผลมาก
วิธีมาตรฐานในการเปรียบเทียบวัตถุในจัสมินคืออะไร?
==และ===ผิดอย่างสิ้นเชิง สองกรณีที่แตกต่างกันของวัตถุที่มีเนื้อหาเดียวกันจะส่งคืนเท็จ สำหรับสิ่งที่ไม่ใช่ดั้งเดิม==และมี===พฤติกรรมเหมือนกัน jsfiddle.net/9mrmyrs6