gpt4 book ai didi

javascript - MongoDB:在 find() 中使用 $where 会引发错误

转载 作者:行者123 更新时间:2023-12-03 06:54:32 24 4
gpt4 key购买 nike

令人惊讶的是,这个问题还没有被问到(好吧,我找不到它),但可以说我正在使用查询:

db.find('this.CustomerPurchaseOrderNumber.indexOf("value") !== -1')

我的数据中有 3/4 个将 CustomerPurchaseOrderNumber 作为字符串,但其中一些将其设置为 null,导致此错误:

error: {
"$err" : "TypeError: Cannot call method 'indexOf' of null near 'value\") !== -1' ",
"code" : 16722
}
  1. 我必须使用“javascript 函数”作为查询
  2. 我无法控制数据

我的问题是,是否可以传递某种“throwIsFalse”标志,这意味着每当该函数抛出错误时,该行就不匹配?

谢谢大家

最佳答案

您不应该使用 $where 查询,因为您可以更有效地执行此操作(并且不会遇到您遇到的问题),如下所示:

db.find({CustomerPurchaseOrderNumber: "value"})

但是,如果您出于某种原因需要使用 $where 查询,则只需在调用 indexOf 之前检查 CustomerPurchaseOrderNumber 是否确实存在> 关于它:

db.find('this.CustomerPurchaseOrderNumber && this.CustomerPurchaseOrderNumber.indexOf("value") !== -1')

关于javascript - MongoDB:在 find() 中使用 $where 会引发错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37335576/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com