How to search for a string in all properties of an object in Angular 2 with TS.
I have an array of customers rendered in a table with a search box, if the user ty
You can loop over the keys of the item and see if any of them include the string, and return true if any number of them match:
return items.filter(item =>
Object.keys(item).some(k => item[k].includes(term.toLowerCase());
)
You need to apply null check and use .toString()
otherwise if value will be number it will not be able to use toLowerCase()
method and will raise error.
return items.filter(item =>
Object.keys(item).some(
k =>
item[k] != null &&
item[k]
.toString()
.toLowerCase()
.includes(term.toLowerCase())
)
);