JavaScript-查找匹配值的键,如SQL中的查询
假设我们有一个像这样的对象-
const obj = {"100":"Jaipur","101":"Delhi","102":"Raipur","104":"Goa"};我们需要编写一个JavaScript函数,该函数接受一个这样的对象作为第一个参数,而将搜索查询项作为第二个参数。然后,我们的函数应返回所有键/值对,其值包括作为第二个参数提供给该函数的搜索项。
我们将简单地遍历该对象,并在遍历并最后返回该对象时构建生成的对象(如果它符合条件)。
示例
为此的代码将是-
const obj = {
"100":"Jaipur",
"101":"Delhi",
"102":"Raipur",
"104":"Goa"
};
const findByQuery = (obj, query) => {
const keys = Object.keys(obj);
const res = {};
keys.forEach(key => {
//不区分大小写的搜索
if(obj[key].toLowerCase().includes(query.toLowerCase())){
res[key] = obj[key]
};
});
return res;
};
console.log(findByQuery(obj, 'Pur'));输出结果
控制台中的输出将是-
{ '100': 'Jaipur', '102': 'Raipur' }