次のように、データを取得してオブジェクトに貼り付ける node.js アプリケーションがあります。
var results = new Object();
User.findOne(query, function(err, u) {
results.userId = u._id;
}
その保存された ID に基づいて if/then を実行すると、比較が真になることはありません。
if (results.userId == AnotherMongoDocument._id) {
console.log('This is never true');
}
2 つの ID の console.log を実行すると、正確に一致します。
User id: 4fc67871349bb7bf6a000002 AnotherMongoDocument id: 4fc67871349bb7bf6a000002
これはある種のデータ型の問題だと思いますが、results.userId を上記の比較が真になるデータ型に変換する方法がわかりません。外部委託した頭脳 (別名 Google) は役に立ちませんでした。