Tôi có một ứng dụng node.js lấy một số dữ liệu và dán nó vào một đối tượng, như thế này:
var results = new Object();
User.findOne(query, function(err, u) {
results.userId = u._id;
}
Khi tôi thực hiện if / then dựa trên ID được lưu trữ đó, so sánh không bao giờ đúng:
if (results.userId == AnotherMongoDocument._id) {
console.log('This is never true');
}
Khi tôi thực hiện console.log của hai id, chúng khớp chính xác:
User id: 4fc67871349bb7bf6a000002 AnotherMongoDocument id: 4fc67871349bb7bf6a000002
Tôi giả sử đây là một loại vấn đề về kiểu dữ liệu, nhưng tôi không chắc cách chuyển đổi results.userId thành một kiểu dữ liệu sẽ dẫn đến sự so sánh ở trên là đúng và bộ não thuê ngoài của tôi (còn gọi là Google) đã không thể giúp đỡ.
.equals()
: mongodb.github.io/node-mongodb-native/api-bson-generated/ chủ