Javascript lodash u2;查找所有匹配项
我有一个简单的函数来返回满足我条件的对象 代码如下所示:Javascript lodash u2;查找所有匹配项,javascript,lodash,Javascript,Lodash,我有一个简单的函数来返回满足我条件的对象 代码如下所示: var res = _.find($state.get(), function(i) { var match = i.name.match(re); return match && (!i.restrict || i.restrict($rootScope.user)); }); 我如何找到所有符合此标准的结果(不仅仅是第一个结果),以及所有结果 谢
var res = _.find($state.get(), function(i) {
var match = i.name.match(re);
return match &&
(!i.restrict || i.restrict($rootScope.user));
});
我如何找到所有符合此标准的结果(不仅仅是第一个结果),以及所有结果
谢谢你的建议。只需使用
\u0.filter
-它会返回所有匹配的项目
迭代集合的元素,返回所有元素的数组谓词返回truthy for。谓词由三个参数调用:(value、index | key、collection)
您可以使用u.filter,传入所有需求,如下所示:
var res = _.filter($state.get(), function(i) {
var match = i.name.match(re);
return match &&
(!i.restrict || i.restrict($rootScope.user));
});
不含lodash,使用ES6,仅供参考: 基本示例(获取年龄小于30岁的人):
您正在查找
\过滤器?
const peopleYoungerThan30 = personArray.filter(person => person.age < 30)
$state.get().filter(i => {
var match = i.name.match(re);
return match &&
(!i.restrict || i.restrict($rootScope.user));
})