我有一个ObjectId数组,在mongoose模式中声明如下。
array: [{
type: mongoose.Schema.Types.ObjectId,
ref: 'User'
}]
因此,此数组包含名为User
的其他Object的ObjectIds。
现在我想检查User
中的特定对象是否在此数组中。最初我尝试过循环:
var flag = false;
for(const usr in array){
if(usr == user) flag = true;
}
但这从未设置过旗帜。我也尝试将它们与===
进行比较。但没有结果。
然后我尝试underscore.js
如下:
var flag = false;
for(const usr in array){
if(underscore.isMatch(user, usr)){
flag = true;
break;
}
}
即使数组为空,也始终将标志设置为true。那么我在这里缺少什么?我真的是javascript和node js的新手。