我有这个
var matches = bookmarks.filter(function(x) {
return _.contains(x.get("tags"), 'apple');
});
Run Code Online (Sandbox Code Playgroud)
这将返回具有apple标签的书签对象
我想在那里放一个数组来拉和所有具有匹配值的书签,类似于此
var matches = bookmarks.filter(function(x) {
return _.contains(x.get("tags"), ['apple','orange']);
});
Run Code Online (Sandbox Code Playgroud)
这不起作用,任何方式让它工作?
编辑:对不起,书签是一个集合,我试图返回具有苹果和橙色标签的模型
epa*_*llo 26
如果tags是一个字符串,那么它就是你的代码
return _.indexOf(x.get("tags"), ['apple','orange']) > -1;
Run Code Online (Sandbox Code Playgroud)
indexOf示例:jsFiddle
如果tags是数组,则可以使用intersection
return _.intersection(['apple','orange'], x.get("tags")).length > 0;
Run Code Online (Sandbox Code Playgroud)
有交集的例子:jsFiddle
在下划线中似乎没有这个功能.但是,您可以轻松地组合其他功能来完成此任务:
_.mixin({
containsAny: function(arr, values) {
// at least one (.some) of the values should be in the array (.contains)
return _.some(values, function(value) {
return _.contains(arr, value);
});
}
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
30795 次 |
| 最近记录: |