掌握 TypeScript 数组对象高级用法:如何有效地进行数组对象过滤?

1,026 阅读1分钟

在 TypeScript 中,可以使用 filter 方法对对象数组进行过滤,从而筛选出符合条件的元素。该方法会返回一个新的数组,其中仅包含满足过滤条件的元素。

下面是一个示例,假设我们有一个包含多个人员信息的对象数组:

interface User {
  userName: string;
  age: number;
}
​
let users: User[] = [
  { userName: 'xiaohuo', age: 18 },
  { userName: 'zhangsan', age: 19 },
  { userName: 'lili', age: 20 }
];
​
​

现在我们想要筛选出年龄大于等于 18 的人员信息,可以使用 filter 方法进行过滤:

let filteredUsers = users.filter(user => user.age >18);
console.log(filteredUsers);

输出结果为:

 [{
  "userName": "zhangsan",
  "age": 19
}, {
  "userName": "lili",
  "age": 20
}] 

上述代码中,我们传入一个回调函数作为 filter 方法的参数,该回调函数会被遍历数组中的每个元素。当该回调函数返回 true 时,该元素会被包含在返回的新数组中;反之,则被排除在外。在本例中,我们使用箭头函数简化回调函数的书写,通过比较每个人员的年龄与 18 的大小关系,筛选出满足条件的人员信息,并将它们存储在 filteredUsers 数组中。