假设我们有一个像这样的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