#javascript #jquery #веб_программирование
Есть функция которая ищет value в объекте. Как можно сделать так, чтоб искать можно было по ключу? Например сейчас работает так : когда у функции search('r', items) аргумент rm то выдаст слова где есть r. // ["bar", "lorem", "dolor"] А было б неплохо если можно было искать и по ключам. Например так : если аргументом будет foo, должно выдать: // ["bar", "lorem", "dolor"] а если аргумент bar то должно выдать: ["amet","ipsum","dolor"] вся функция : function search(s, arr) { var matches = []; for (var i = arr.length; i--;) { for (key in arr[i]) { if (arr[i].hasOwnProperty(key) && arr[i][key].indexOf(s) > -1) matches.push(arr[i][key]); } } return matches; }; var items = [{ "foo": "bar", "bar": "sit" }, { "foo": "lorem", "bar": "ipsum" }, { "foo": "dolor", "bar": "amet" }]; search('r', items); // ["bar", "lorem", "dolor"]
Ответы
Ответ 1
Аналогично же: function search(s, arr) { var matches = []; for (var i = arr.length; i--;) { for (key in arr[i]) { if (arr[i].hasOwnProperty(key) && key.indexOf(s) > -1) { matches.push(arr[i][key]); } } } return matches; }; var items = [{ "foo": "bar", "bar": "sit" }, { "foo": "lorem", "bar": "ipsum" }, { "foo": "dolor", "bar": "amet" }]; search('foo', items);
Комментариев нет:
Отправить комментарий