に存在するかどうかを確認します。マングースはのObjectIdは、例えばモデルで次の配列
AboutModel == {
name: String,
}
User.findOne({name: 'Alpha'}, function(error, user){
About.find({}, function(error, abouts){ // consider abouts are all unique in this case
var doStuff = function(index){
if (!(about.id in user.friends)){
user.friends.push(about.id);
about.save();
}
if (index + 1 < abouts.length){
doStuff(index + 1)
}
}
doStuff(0) // recursively...
})
})
この場合、 'about.id in user.friends'という条件は常に偽と思われます。どうやって?これはObjectIdのタイプや保存方法と関係していますか?
注:はSchema.ObjectId
の略です。それが問題なのかどうかはわかりません。
これは基本的に 'forEach'で' == 'と同じですか? – p0lAris
TypeError:Object 5274958d4ddfd6341858b2f7には 'equals'メソッドがありません。 – p0lAris
配列に値が設定されている場合はどうなりますか? –