任何人都知道检查对象是猫鼬对象的最简单方法是什么? 我只是最好的检查,如果toObject()被定义或有一种更有效的方法。 非常感谢猫鼬:检查对象是否是猫鼬对象
16
A
回答
23
您可以通过instanceof
运算符检查对象的原型,以确认它是猫鼬模型的一个实例。从mongoosejs.com使用示例模式:
if (obj instanceof Cat) {
// yes, it's a mongoose Cat model object
...
}
14
我使用这个
if (object.constructor.name === 'model') {
// object is mongoose object
}
+0
这一个工作,上面的答案在JSLint – Enkode
+0
失败'模型'是一个非常通用的名称。 –
0
在检查的情况下,对我来说,follwing当一个对象ID是一个人口稠密的对象或只是一个对象ID:
if (object._id.constructor.name === 'ObjectID') {
// Not a populated object, only its ID
}
0
要检查是否obj
是猫鼬的对象,使用此片段:
const _ = require('lodash');
const mongoose = require('mongoose');
function checkIfMongooseObject(obj) {
return _.get(charger, 'constructor.base') instanceof mongoose.Mongoose;
}
与其他提供的解决方案相反,这是安全的 - 它永远不会失败,无论类型为obj
(甚至是String或Int)。
相关问题
- 1. 猫鼬,检查是否在对象
- 2. 猫鼬对象
- 3. 检查猫鼬对象是否包含子字段的函数
- 4. 猫鼬 - 推到对象
- 5. 猫鼬查询找到对象
- 6. 如何为猫鼬查询做对象?
- 7. 如何猫鼬伸出查询对象
- 8. 使用猫鼬查询验证对象
- 9. 猫鼬检查getById是否有字段
- 10. 对猫鼬
- 11. 查找对象的不同数组对象与猫鼬
- 12. 猫鼬不坚持返回对象
- 13. 猫鼬使用对象ID软删除
- 14. 猫鼬找到一个嵌套对象
- 15. 如何从猫鼬模型对象
- 16. 猫鼬的对象ID参考
- 17. 猫鼬架构:*在上一个对象
- 18. 在猫鼬,如何筛选对象
- 19. 咕task任务保存猫鼬对象
- 20. 猫鼬Express.js删除对象与关系
- 21. 猫鼬模式中的嵌套对象
- 22. 猫鼬填充问题 - 数组对象
- 23. 猫鼬删除空对象或阵列
- 24. 猫鼬 - 在数组中填充对象
- 25. 推对象数组使用猫鼬
- 26. 用EJS迭代猫鼬对象
- 27. 猫鼬添加对象数组
- 28. 更新/删除猫鼬对象属性
- 29. 猫鼬是否聪明?
- 30. 猫鼬查询
不错!例如this.message =对象instanceof消息? object:new Message(object); – charneykaye