可以说我有一个如下所示的JSON文件。什么是按年龄过滤列表的最干净方法,以便我也可以针对多个年龄进行过滤。我不想使用or运算符,因为在较大的过滤器示例中,这将是很长的逻辑运算。
// DON'T
return this.users.filter((user) => {
return user.age=== 17 || user.age=== 20 || ....
});
{
"id": 1,
"name": "Nick",
"age": 17
},
{
"id": 2,
"name": "Bob",
"age": 20
},
{
"id": 3,
"name": "Ray",
"age": 19
}
答案 0 :(得分:3)
您可以为此使用Array.prototype.includes
:
return this.users.filter(user => [17, 20, 22, 26, 35, 36, 80].includes(user.age));
答案 1 :(得分:1)
NULL
答案 2 :(得分:1)
您可以使用Array.prototype.includes
过滤数据,为allowedAges
创建一个数组,然后根据allowedAges.inclues(user.age)
进行过滤
示例
const userData = [{
"id": 1,
"name": "Nick",
"age": 17
},
{
"id": 2,
"name": "Bob",
"age": 20
},
{
"id": 3,
"name": "Ray",
"age": 19
}]
const allowedAges = [17,20]
const filteredData = userData.filter(user => allowedAges.includes(user.age));
console.log(filteredData)