Задать вопрос
@Kusmich

Как реализовать поиск по ключу объекта?

Есть функция которая ищет value в объекте. Как можно сделать так, чтоб искать можно было по ключу ?

Например сейчас работает так :

когда у функции search('r', items) аргумент r то выдаст слова где есть 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;
};
  • Вопрос задан
  • 442 просмотра
Подписаться 1 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Фронтенд-разработчик
    10 месяцев
    Далее
  • Skillbox
    JavaScript
    3 месяца
    Далее
  • Нетология
    Fullstack-разработчик на Python + нейросети
    20 месяцев
    Далее
Решения вопроса 1
alexey-m-ukolov
@alexey-m-ukolov Куратор тега JavaScript
Как можно сделать так, чтоб искать можно было по ключу ?

Понять, что происходит в этой строке:
if( arr[i].hasOwnProperty(key) && arr[i][key].indexOf(s) > -1 )

И исправить логику на нужную.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы