下划线找到所有用途

时间:2016-05-16 03:29:51

标签: underscore.js

出于某种原因,我的发现无法正常工作。这是正确的使用方法吗?我按照文档中的示例代码进行操作,它似乎有类似的模式。

var test = _.findWhere(object.entryDetails, {entryOwner_id: customer._id});

object.entryDetails具有以下值

   [{ money_out: 0,
        money_in: 0,
        entryOwner_id: 5738b77b648115cf0410ba92,
        _id: 57393d834d7ab0fa1af85600 },
      { money_out: 0,
        money_in: 0,
        entryOwner_id: 5738b77c648115cf0410baaa,
        _id: 57393d834d7ab0fa1af855ff } ]

customer._id具有以下值

5738b77b648115cf0410ba92

显然,customer._id存在于数组中,但我的findWhere返回" undefined"

1 个答案:

答案 0 :(得分:0)

我发现在比较查询时,下划线不使用“equals”。因此,工作将是

var filtered = _.filter(object.entryDetails, function (entry) {
     return entry.entryOwner_id.equals(customer._id);});
if (filtered.length > 0) ...