按联合类型筛选对象数组TypeScript

5w9g7ksd  于 2023-01-06  发布在  TypeScript
关注(0)|答案(2)|浏览(156)

我有一个对象数组,如下所示:
第一个月
我已经定义了联合类型
type NamesType = 'something' | 'bob'
可以通过类型过滤数组吗?所以最终结果是
array = [{name: 'something'}, {name: 'bob'}]

huwehgph

huwehgph1#

您可以执行以下操作:

array = [{name: 'something'}, {name: 'random'}, {name: 'bob'}];
namesType = ['something','bob'];
filteredArray = array.filter(item => namesType.includes(item.name));
ni65a41a

ni65a41a2#

一个示例可以像这样使用Set

const array = [{name: 'something'}, {name: 'random'}, {name: 'bob'}]
const namesType = new Set(['something','bob']);
const filteredArray = array.filter(item => namesType.has(item.name));
console.log(filteredArray)

相关问题