我想根据我在输入字段中输入的内容获得结果。此搜索可以通过多个键过滤,如firstName,lastName,emailId。如何通过在javascript中搜索多个属性值来实现过滤器过滤器?
这是我对象的数组,
var resData = [
{
firstName:"Jhon",
lastName:"adam",
emailId:"[email protected]"
},
{
firstName:"Kyle",
lastName:"Miller",
emailId:"[email protected]"
},
{
firstName:"Jhonathan",
lastName:"adam",
emailId:"[email protected]"
},
{
firstName:"Lewis",
lastName:"harber",
emailId:"[email protected]"
}
];
Javascript代码,
resData.filter(data, function(item){
item.map(function(list, i) {
if (list.firstName.toLowerCase().indexOf(self.state.inputValue.toLowerCase()) === -1 || list.lastName.toLowerCase().indexOf(self.state.inputValue.toLowerCase()) === -1 || list.emailId.toLowerCase().indexOf(self.state.inputValue.toLowerCase()) === -1) {
return;
}
console.log(list);
});
});
用户应该如何选择多个值?有没有格式,例如'firstname:Jhon emaiid:jhn12 @ gmail.com'?或者它只是一个以空格分隔的字符串列表:'jhon jhn12 @ gmail.com'? –
听起来就像你想自动完成寻找所有值的匹配。这个'map'在那里做什么? – sabithpocker