Javascript Typescript对象的动态筛选数组
我有一个对象数组,我想做一个动态过滤器,这意味着只传递一个不带键的值来搜索对象上的每个键值,并返回匹配的对象。与过滤所有列的角度材质表相同Javascript Typescript对象的动态筛选数组,javascript,angular,typescript,rxjs,Javascript,Angular,Typescript,Rxjs,我有一个对象数组,我想做一个动态过滤器,这意味着只传递一个不带键的值来搜索对象上的每个键值,并返回匹配的对象。与过滤所有列的角度材质表相同 [ { "id":4, "email":"eve.holt@reqres.in", "first_name":"Eve", "last_name":"Holt", "avatar":"https://s3.amazonaws.com/uifaces/faces/twitter/marcoram
[
{
"id":4,
"email":"eve.holt@reqres.in",
"first_name":"Eve",
"last_name":"Holt",
"avatar":"https://s3.amazonaws.com/uifaces/faces/twitter/marcoramires/128.jpg",
"date":"2020-02-24T13:19:08.630025Z"
},
{
"id":5,
"email":"charles.morris@reqres.in",
"first_name":"Charles",
"last_name":"Morris",
"avatar":"https://s3.amazonaws.com/uifaces/faces/twitter/stephenmoon/128.jpg",
"date":"2020-02-24T13:19:08.630025Z"
},
{
"id":6,
"email":"tracey.ramos@reqres.in",
"first_name":"Tracey",
"last_name":"Ramos",
"avatar":"https://s3.amazonaws.com/uifaces/faces/twitter/bigmancho/128.jpg",
"date":"2020-02-24T13:19:08.630025Z"
}
]
另外,我希望能够在日期时进行筛选,您可以使用它来实现轻量级全文搜索。对于日期筛选,您可以使用。您可以这样做,假设
数据
包含您的对象数组。filtered
包含匹配对象的结果
const search = 'yourValue';
const filtered = data.filter(obj => {
return !!JSON.stringify(Object.values(obj)).match(new RegExp(search, 'i'));
});
到目前为止,您尝试过什么?除了展示您尝试过的内容和解释您遇到的具体问题外,您还应该清楚需求——为了您自己,以及其他任何事情。如果一个值是数组还是数字呢?应该是区分大小写的搜索吗?这不是一个微不足道的问题,你不会让别人为你写一个有效的解决方案——尤其是没有明确的需求。