【发布时间】:2017-07-14 07:16:22
【问题描述】:
我有以下对象
{ _id: 58ae39c54473f9cfd4eb29b6,
email: 'another@club.com',
name: 'Another Club Renamed',
__v: 0,
createdEvents: [],
instructors: [ 58a5ac4f84230a2117d1d6cb, 111111111111111111111111 ],
members: [] }
当我使用方法时
object.instructors.includes(58a5ac4f84230a2117d1d6cb)
object.instructors.includes(111111111111111111111111)
或
object.instructors.includes('58a5ac4f84230a2117d1d6cb')
object.instructors.includes("111111111111111111111111")
结果总是错误的,我做错了什么吗?
Array.isArray(club.instructors) 返回真
编辑:对象是mongoose.document。上面的对象正是我执行时它被记录到控制台的方式
Club.findById(id (err, club) =>{
console.log(club);
})
【问题讨论】:
-
发布的代码在语法上不正确;
58a5ac4f84230a2117d1d6cb不是有效数字。 -
var x = [58a5ac4f84230a2117d1d6cb, 111111]导致语法错误 ►var x = [2222,1111]有效,所以 ►var x = ['58a5ac4f84230a2117d1d6cb',111111111111111111111111] -
58a5ac4f84230a2117d1d6cb是什么数据类型?
-
它是 mongoose.Schema.Types.ObjectId。当我从猫鼬查询将其记录到控制台时就是这样。
-
第二个注意事项,你怎么没注意到
SyntaxError: Unexpected identifier在任何阶段?
标签: javascript arrays mongoose