在 JavaScript 中过滤对象数组
Shiv Yadav
2022年7月18日
本文将教你如何使用 JavaScript filter()
函数过滤数组中的元素。
在 JavaScript 中过滤对象数组
使用数组时,最典型的工作之一是构建一个包含原始数组成员子集的新集合。假设你有多个学生对象,每个对象都有两个属性:sports
和 subjects
。
const students = [
{ sports: ["cricket", "football"], subjects: "Science" },
{ sports: ["Badminton", "Hockey"], subjects: "Math" },
{ sports: ["Chess", "cricket"], subjects: "Computer Science" },
{ sports: ["Judo", "football"], subjects: "Social Science" },
];
要找到最喜欢的运动是板球的学生,你必须像这样过滤包含 cricket
的运动:
const Cricket = students.filter((e) => e.sports.includes("cricket"));
console.log(Cricket);
输出:
[{
name: "Johnny",
sports: ["cricket", "football"]
}, {
name: "Dev",
sports: ["Chess", "cricket"]
}]
在这个例子中,我们使用了 students
数组对象的 filter()
方法并传递了一个测试每个成员的程序。在函数中,我们确定数组中每个学生的运动是否对应于 cricket
。
如果是这种情况,函数返回 true
;否则,它返回 false
。filter()
方法仅包含返回数组中传递回调函数条件的那些元素。
Author: Shiv Yadav
Shiv is a self-driven and passionate Machine learning Learner who is innovative in application design, development, testing, and deployment and provides program requirements into sustainable advanced technical solutions through JavaScript, Python, and other programs for continuous improvement of AI technologies.
LinkedIn