Введение
В этом лабораторном задании мы исследуем реализацию JavaScript-функции под названием findKey. Эта функция предназначена для поиска первого ключа в объекте, который удовлетворяет заданной тестирующей функции. Используя Object.keys() и Array.prototype.find(), мы можем эффективно искать среди свойств объекта и вернуть нужный ключ.
Функция для поиска первого ключа, соответствующего тесту
Для поиска первого ключа в объекте, который соответствует заданной тестовой функции, используйте функцию findKey(). Сначала получите все свойства объекта с помощью Object.keys(). Затем примените тестовую функцию к каждой паре ключ-значение с использованием Array.prototype.find(). Тестовая функция должна принимать три аргумента: значение, ключ и объект. Функция возвращает первый ключ, который удовлетворяет тестовой функции, или undefined, если не найдено ни одного.
Вот пример реализации findKey():
const findKey = (obj, fn) =>
Object.keys(obj).find((key) => fn(obj[key], key, obj));
Для использования findKey() передайте объект и тестовую функцию в качестве аргументов:
findKey(
{
barney: { age: 36, active: true },
fred: { age: 40, active: false },
pebbles: { age: 1, active: true }
},
(x) => x["active"]
); // 'barney'
В этом примере findKey() возвращает первый ключ в объекте, где значение свойства active равно true, что является 'barney'.
Резюме
Поздравляем! Вы завершили лабораторную работу "Найти первый соответствующий ключ". Вы можете практиковаться в более многих лабораторных работах в LabEx, чтобы улучшить свои навыки.