📜  typescript 过滤器对象数组 - Javascript (1)

📅  最后修改于: 2023-12-03 14:48:05.606000             🧑  作者: Mango

TypeScript 过滤器对象数组 - Javascript

在 TypeScript 代码中过滤对象数组是很常见的操作,其中一种方式是使用过滤器函数。过滤器函数可以接受一个对象数组和一个过滤条件作为参数,然后返回一个符合条件的新对象数组。这个过程非常简单,但是需要一些 TypeScript 相关的知识点来实现。

过滤器函数的定义

定义一个过滤器函数,需要指定两个参数,第一个是对象数组,第二个是过滤条件。

function filterObjArray<T>(array: T[], filter: (value: T) => boolean): T[] {
  // 过滤函数的实现
}

上面的代码定义了一个函数 filterObjArray,它接受两个参数:一个类型为 T 的对象数组和一个过滤函数 filter,该函数接受类型为 T 的参数并返回布尔值。函数返回一个新的类型为 T 的对象数组,其中只包含符合过滤条件的对象。

举个例子
interface Person {
  name: string;
  age: number;
}

const people: Person[] = [
  { name: 'Alice', age: 30 },
  { name: 'Bob', age: 25 },
  { name: 'Charlie', age: 35 },
];

const result = filterObjArray<Person>(people, (person) => person.age > 30);

console.log(result); // 输出:[{ name: 'Charlie', age: 35 }]

在上面的代码中,我们定义了一个 Person 接口,然后创建了一个类型为 Person 的对象数组 people。我们使用 filterObjArray 函数来过滤出年龄大于 30 的人,并将结果存储在 result 变量中。最后,我们将筛选结果输出到控制台中。

总结

在 TypeScript 中,过滤对象数组是一项非常常见的任务,我们可以使用一个简单的过滤器函数来实现它。我们只需要定义一个过滤函数,然后将其传递到我们的对象数组中即可。这种方式提高了我们代码的可读性,并且使得代码更易于维护。