过滤JavaScript对象
在这里,我们需要创建一个函数,该函数接受一个对象和一个搜索字符串,并过滤以该搜索字符串开头并返回该对象的对象键
这是这样做的代码-
示例
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"
}热门推荐
1 训练狗狗基础
2 怎么训练狗狗笑
3 怎么训练狗狗卧下
4 上海狗狗训练基地
5 训练狗狗排便
6 狗狗基础训练
8 如何训练狗狗装死
9 狗狗站姿训练
10 狗狗训练用品
11 训练狗狗吧
12 狗狗要怎么训练
13 怎么训练狗狗玩球
14 训练狗狗唤回
15 狗狗训练躺下
16 狗狗训练指令
17 狗狗的训练技巧
18 狗狗不好训练