To filter array of objects whose any properties contain a value with JavaScript, we call the filter method.
For instance, we write
const filterByValue = (array, string) => {
return array.filter((o) =>
Object.values(o).some((v) => v.toLowerCase().includes(string.toLowerCase()))
);
};
const arrayOfObject = [
{ name: "Paul", country: "Canada" },
{ name: "Lea", country: "Italy" },
{ name: "John", country: "Italy" },
];
console.log(filterByValue(arrayOfObject, "lea"));
to define the filterByValue function.
In it, we call array.filter with a callback that calls Object.values with o to return an array of o‘s property values.
Then we call some with the array to check if v includes string if they’re both converted to lower case with toLowerCase with includes.
Next, we call filterByValue with arrayOfObject and the value we’re checking for.