Express JS:奇怪的字符串比较

ExpressJS : Strange String Comparation

我正在这样做:

res.jsonp({
     userId:  user._id,
     spotUserId:  spot.user._id, 
     condition:  (user._id === spot.user._id)
});

结果是这样的:

{
    "userId": "551192836bff030fb657777c",
    "spotUserId": "551192836bff030fb657777c",
    "condition": false
}

我不明白为什么条件为假...帮帮我!

好的,我解决了问题

在 ExpressJS 中比较 Mongoose ObjectsID,是 .id 而不是 _id.

示例:

res.jsonp({
    userId:  user._id,
    spotUserId:  spot.user._id, 
    condition:  (user.id === spot.user.id)
});

结果:

{
    "userId": "551192836bff030fb657777c",
    "spotUserId": "551192836bff030fb657777c",
    "condition": true
}