Javascript 如果特定键包含搜索项,则筛选对象数组
我试图通过一个特定的键过滤一个具有多个键/值对的对象。看来我写的代码正在搜索整个对象,而不管键是什么 如果关键字名称包含搜索项,请返回搜索项 对象数组: 搜索: 因此,如果我搜索某个对象,我只希望它通过名称循环搜索该术语…您不需要Object.keys循环 常量someArrayOfObjects=[ {id:'1',name:'Something'}, {id:'2',name:'other'}, {id:'3',name:'让我们再做一件'}, ]; 让key='name'; 设searchTerm='th'; const res=someArrayOfObjects.filtero=> o[key].toLowerCase.includesearchterm.toLowerCase; console.logres 您不需要Object.keys循环 常量someArrayOfObjects=[ {id:'1',name:'Something'}, {id:'2',name:'other'}, {id:'3',name:'让我们再做一件'}, ]; 让key='name'; 设searchTerm='th'; const res=someArrayOfObjects.filtero=> o[key].toLowerCase.includesearchterm.toLowerCase;Javascript 如果特定键包含搜索项,则筛选对象数组,javascript,arrays,reactjs,Javascript,Arrays,Reactjs,我试图通过一个特定的键过滤一个具有多个键/值对的对象。看来我写的代码正在搜索整个对象,而不管键是什么 如果关键字名称包含搜索项,请返回搜索项 对象数组: 搜索: 因此,如果我搜索某个对象,我只希望它通过名称循环搜索该术语…您不需要Object.keys循环 常量someArrayOfObjects=[ {id:'1',name:'Something'}, {id:'2',name:'other'}, {id:'3',name:'让我们再做一件'}, ]; 让key='name'; 设searc
console.logres 与iota类似,您不需要使用Object.key创建额外的数组。 只需使用“name”键循环/检查原始数组中的每个项。 您还可以尝试使其更易于重用,如下所示
const someArrayOfObjects = [
{ id: '1', name: 'Something' },
{ id: '2', name: 'Another' },
{ id: '3', name: 'Lets do one more' },
];
const search = function (anyArray, searchTerm) {
return anyArray.filter((obj) => {
if (obj.name === searchTerm) {
return obj.name;
}
return false;
});
};
const case1 = search(someArrayOfObjects, 'Something');
console.log(case1);
与iota类似,您不需要使用Object.key创建额外的数组。 只需使用“name”键循环/检查原始数组中的每个项。 您还可以尝试使其更易于重用,如下所示
const someArrayOfObjects = [
{ id: '1', name: 'Something' },
{ id: '2', name: 'Another' },
{ id: '3', name: 'Lets do one more' },
];
const search = function (anyArray, searchTerm) {
return anyArray.filter((obj) => {
if (obj.name === searchTerm) {
return obj.name;
}
return false;
});
};
const case1 = search(someArrayOfObjects, 'Something');
console.log(case1);
const someArrayOfObjects = [
{ id: '1', name: 'Something' },
{ id: '2', name: 'Another' },
{ id: '3', name: 'Lets do one more' },
];
const search = function (anyArray, searchTerm) {
return anyArray.filter((obj) => {
if (obj.name === searchTerm) {
return obj.name;
}
return false;
});
};
const case1 = search(someArrayOfObjects, 'Something');
console.log(case1);