JavaScript 对象的过滤
javascriptweb developmentobject oriented programming更新于 2025/9/25 5:00:17
这里我们需要创建一个函数,该函数接受一个对象和一个搜索字符串,并过滤以搜索字符串开头的对象键并返回该对象
以下是执行此操作的代码 −
示例
const obj = {
"PHY": "Physics",
"MAT": "Mathematics",
"BIO": "Biology",
"COM": "Computer Science",
"SST": "Social Studies",
"SAN": "Sanskrit",
"ENG": "English",
"HIN": "Hindi",
"ESP": "Spanish",
"BST": "Business Studies",
"ECO": "Economics",
"CHE": "Chemistry",
"HIS": "History"
}
const str = 'en';
const returnFilteredObject = (obj, str) => {
const filteredObj = {};
Object.keys(obj).forEach(key => {
if(key.substr(0, str.length).toLowerCase() ===
str.toLowerCase()){
filteredObj[key] = obj[key];
}
});
return filteredObj;
};
console.log(returnFilteredObject(obj, str));
代码解释 −
我们简单地迭代对象的每个键,如果它以我们作为参数收到的 str 开头,那么我们将其保存在另一个对象中,否则我们继续迭代。
为了解决这个问题,我们迭代了每个键并将所需的键推入一个新对象,但为了获得更高性能的解决方案,我们可以从原始对象中删除不需要的属性,而不是创建一个新对象。
输出
控制台中的输出将是 −
{
ENG:"English"
}
相关文章
有用资源
javascript 参考教程 - 该教程包含有关 javascript 的更多信息:https://www.cainiaomax.com/javascript/

