Javascript 如何在剑道网格(AngularJs)中过滤对象数组?

Javascript 如何在剑道网格(AngularJs)中过滤对象数组?,javascript,angularjs,kendo-ui,kendo-grid,Javascript,Angularjs,Kendo Ui,Kendo Grid,我有这样一个文档对象: {"id": 1, "annotation": "some text", "signers": [{ "id": 32, "name": "Bob", "address": {"country": "USA"}}, { "id": 44, "n

我有这样一个文档对象:

{"id": 1, "annotation": "some text", "signers": [{ "id": 32, "name": "Bob", "address": {"country": "USA"}}, 
{ "id": 44, "name": "Bill", "address": {"country": "Canada"}}]}
文档显示在剑道网格中,其中一列用于签名者。如何按姓名(也按国家,但相关性较小)筛选签名者?如何过滤对象数组


我一直在想如何编写一个自定义的
filter
函数,并在客户端执行所有过滤,但我一直没能解决这个问题。

您可以创建一个
集合,其中包含要搜索和调用
集合的名称或国家,该集合在
数组的回调中具有

let doc={“id”:1,“注释”:“一些文本”,“签名者”:[{“id”:32,“姓名”:“Bob”,“地址”:{“国家”:“美国”},
{“id”:44,“姓名”:“法案”,“地址”:{“国家”:“加拿大”}}};
const name=新集合([“Bob”,“Joe”]);
doc.signers=doc.signers.filter(({name})=>names.has(name));
控制台日志(doc)