【发布时间】:2016-06-19 10:59:49
【问题描述】:
我有一个数组模型如下:
records:[{
"empid":1,
"fname": "X",
"lname": "Y"
},
{
"empid":2,
"fname": "A",
"lname": "Y"
},
{
"empid":3,
"fname": "B",
"lname": "Y"
},
{
"empid":4,
"fname": "C",
"lname": "Y"
},
{
"empid":5,
"fname": "C",
"lname": "Y"
}
]
现在我有一个 empid 的 [1,4,5] 数组。
所以现在我需要过滤包含第二个中所有键的第一个数组。
输出:
records:[{
"empid":1,
"fname": "X",
"lname": "Y"
},
{
"empid":4,
"fname": "C",
"lname": "Y"
},
{
"empid":5,
"fname": "C",
"lname": "Y"
}
]
我可以在angular 中使用forEach 循环来做到这一点,但因为我的模型对象中有100 多条记录。我需要关于如何以更好的方式处理此问题的建议。
我正在考虑创建一个自定义过滤器,但您对此有何看法。(如果是,请提供实现此目的的示例代码)。
【问题讨论】:
-
数据和id排序了吗?
-
不,数据未排序.. Aravindsamy 的解决方案看起来不错.. 谢谢大家的快速响应..
-
几乎与javascript - How to filter object array based on attributes? - Stack Overflow 重复——尽管在这种情况下条件稍微复杂一些(使用
includes)会 -
你如何得到这个结果 [1,4,5]
标签: javascript angularjs angular-filters