我有以下值数组:
[
{
id: 1,
field: 'map'
},
{
id: 2,
field: 'dog'
},
{
id: 3,
field: 'map'
}
]
我需要找出字段等于的元素dog
and map
。我知道我可以使用_.filter
方法并传递迭代器函数,但我想知道的是是否有更好的解决方案来解决这个问题,我可以传递搜索字段和可能的值。有人可以提供更好的方法吗?
EDIT::
我可以使用以下方法:
_.where(array, {field: 'dog'})
但这里我可能只检查一个条款
_.filter(data, function(item){ return item.field === 'map' || item.field === 'dog'; })
如果你想创建一个接受的函数field
and values
它可以看起来像这样:
function filter(data, field, values) {
_.filter(data, function(item){ return _.contains(values, item[field]); })
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)