案例如下:
集合(collection):Com2;
原有文档(document)如下:
{
即,所有document中的域(field)除了默认的_id外,还有id和name。
此时,使用字符串函数indexOf()查询时,情况是:
({
后来,又用for(i=0;i<6;i++){db.Com2.insert({_id:i})}批量插入了如下document:
{
新插入的这批document中,field只有默认的_id,此时再使用indexOf()查询时,虽然document总共有13条,但情况却变为:
({
原因分析:就上述案例而言,当collection中不是所有的document中均有name这样的field时,使用indexOf()就会出现undefined异常。不过,这应该算是indexOf()函数的一个缺陷吧,希望以后能够改进。
转自本人csdn:
在MongoDB中使用字符串函数indexOf()时出现this.*** is undefined异常的原因blog.csdn.net![a3e17842dcc1697e839eb95c0bf1d55b.png](https://i-blog.csdnimg.cn/blog_migrate/7917acf8256cd536c523f64bb00c44fe.jpeg)