📅  最后修改于: 2023-12-03 15:10:49.151000             🧑  作者: Mango
当我们有一个 JavaScript 对象数组时,我们有时需要根据多个参数对其进行过滤。 下面是一个 JavaScript 对象数组的例子:
const people = [
{ name: 'John', age: 27, country: 'USA' },
{ name: 'Mary', age: 32, country: 'Canada' },
{ name: 'Peter', age: 22, country: 'Australia' },
{ name: 'David', age: 45, country: 'USA' },
{ name: 'Kate', age: 37, country: 'Canada' }
];
我们可能需要根据多个参数,例如需要找出年龄在 30 到 40 之间,来自加拿大的人员。 在这种情况下,我们可以使用 filter
方法过滤数组。 以下是如何实现该过滤的示例代码:
const filteredPeople = people.filter(person => {
return person.age >= 30 && person.age <= 40 && person.country === 'Canada';
});
console.log(filteredPeople);
// Output: [ { name: 'Mary', age: 32, country: 'Canada' } ]
在上面的代码中,我们使用了 filter
方法来过滤 people
数组。 我们传递一个回调函数作为参数,该回调函数应该返回过滤条件的布尔值。 返回 true
的对象将被保留,返回 false
的对象将被从结果中删除。
在回调函数中,我们使用了逻辑 AND 运算符来组合多个过滤条件,这些条件为年龄在 30 到 40 之间,并且来自加拿大。 这将在上面的代码示例中返回名为 Mary 的对象。
如果我们需要更多的过滤条件,我们只需要继续添加条件,并使用逻辑 AND 运算符连接它们即可。
以上就是根据多个参数过滤 JavaScript 对象数组的介绍,希望对你有所帮助!