【发布时间】:2017-02-19 10:38:48
【问题描述】:
我有以下数据:
var jobs = [
{
job_type: "Part Time",
latitude: 49.545068,
longitude: 0.760518,
title: "reiciendis",
industry: [
{
id: 1,
name: "development" },
{
id: 2,
name: "design"
}
]},
{
job_type: "Full Time",
latitude: 51.545068,
longitude: 0.460518,
title: "auteas",
industry: [
{
id: 1,
name: "development" },
{
id: 2,
name: "testing"
}
]
我想尝试根据用户搜索参数过滤结果,即用于工作搜索的行业选择,它填充一个数组:
var jobchoices = ["testing", "design"];
到目前为止,我的 lodash 过滤器如下所示:
var self = this
return _.filter(this.jobs, function(item) {
return _.filter(item.industry, function(obj) {
return _.some(self.jobchoices, obj.name);
});
});
但它对所有作业都返回 true。这是我第一次使用 lodash。我究竟做错了什么?其次,我是否可以继续以这种方式进行链接以按其他用户选择(例如按工作类型)进行过滤?
【问题讨论】:
-
development、testing和design不应该是字符串吗? -
你是对的。已更新。
标签: javascript arrays filtering lodash