使用 JavaScript 在对象数组中查找特定键值
javascriptweb developmentfront end technologyobject oriented programming
假设我们有一个像这样的 JSON 对象 −
const obj = {
"LAPTOP": [{
"productId": "123"
}],
"DESKTOP": [{
"productId": "456"
}],
"MOUSE": [{
"productId": "789"
}, {
"productId": "012"
}],
"KEY-BOARD": [{
"productId": "345"
}]
};
我们需要编写一个 JavaScript 函数,该函数将一个这样的对象作为第一个参数,将一个键值对作为第二个参数。
键值对基本上就是像这样的对象 −
const pair = {"productId": 456};
然后,该函数应在对象中搜索具有指定 "productId" 的键并返回该键。
示例
其代码为 −
const obj = {
"LAPTOP": [{
"productId": "123"
}],
"DESKTOP": [{
"productId": "456"
}],
"MOUSE": [{
"productId": "789"
}, {
"productId": "012"
}],
"KEY-BOARD": [{
"productId": "345"
}]
};
const searchByPair = (obj = {}, pair = {}) => {
const toSearch = Object.values(pair)[0];
let required = undefined;
Object.keys(obj).forEach((key) => {
if(obj[key].find((pid) => pid.productId === toSearch)){
required = key;
}
});
return required;
};
console.log(searchByPair(obj, {
'productId': '123'
}));
输出
控制台中的输出将是 −
LAPTOP
相关文章
有用资源
javascript 参考教程 - 该教程包含有关 javascript 的更多信息:https://www.cainiaomax.com/javascript/

