ฉันมีแอปพลิเคชั่น node.js ที่ดึงข้อมูลบางส่วนและติดเข้าไปในวัตถุเช่นนี้
var results = new Object();
User.findOne(query, function(err, u) {
results.userId = u._id;
}
เมื่อฉันทำ if / then ตาม ID ที่เก็บไว้นั้นการเปรียบเทียบจะไม่เป็นจริง:
if (results.userId == AnotherMongoDocument._id) {
console.log('This is never true');
}
เมื่อฉันทำ console.log ของทั้งสอง id พวกเขาตรงกับ:
User id: 4fc67871349bb7bf6a000002 AnotherMongoDocument id: 4fc67871349bb7bf6a000002
ฉันสมมติว่านี่เป็นปัญหาประเภทข้อมูลบางอย่าง แต่ฉันไม่แน่ใจว่าจะแปลง results.userId เป็นประเภทข้อมูลที่จะส่งผลให้การเปรียบเทียบข้างต้นเป็นจริงและสมองที่ได้รับการว่าจ้างจากภายนอก (aka Google) ไม่สามารถช่วยได้
.equals()
: mongodb.github.io/node-mongodb-native/api-bson-generated/…