[英]Filtering array elements based on 'in' condition in typescript
我有一个arrayList,其中包含员工信息,例如员工姓名,职称,职位。 我有我的观点一个多选组件返回等级的像一个数组[1,2,3]
一旦我们选择grade1
, grade2
, grade3
从多选下拉列表。 有没有一种方法可以根据这些成绩数组来过滤我的员工名单? 类似这样:
this.employeeList.filter(x=> x.grade in (grade1,grade2,grade3));
还是有其他方法可以做到这一点? 基本上,我需要根据多重选择值过滤我的员工列表。 请提出建议,因为我是打字稿新手。 非常感激你的帮助。
处理常规变量时,可以将它们包装到其他数组[var1, var2, ...]
并使用includes()
进行检查:
const grade1 = 1, grade2 = 2, grade3 = 3; const employeeList = [ { grade: 1 }, { grade: 3 }, { grade: 4 }, { grade: 8 }, { grade: 9 } ]; const result = employeeList.filter(x => [grade1,grade2,grade3].includes(x.grade)); console.log(result) // should print the array with objects {"grade": 1} and {"grade": 3}
我只会使用类似:
x => [grade1,grade2,grade3].indexOf(x) != -1
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.