Проверяет понимание работы метода reduce для фильтрации свойств объекта по заданному списку ключей.
Функция pick — это распространённый утилитарный метод, который позволяет извлечь из объекта только те свойства, которые перечислены в массиве ключей. Она полезна, когда нужно передать в компонент или функцию лишь часть данных, не копируя весь объект.
Метод reduce идеально подходит для этой задачи, так как он позволяет последовательно накапливать результат в новом объекте. На каждой итерации мы проверяем, существует ли текущий ключ в исходном объекте, и если да — добавляем его в аккумулятор.
function pick(obj, keys) {
return keys.reduce((acc, key) => {
if (key in obj) {
acc[key] = obj[key];
}
return acc;
}, {});
}
const user = { name: 'Alice', age: 30, city: 'NYC' };
const picked = pick(user, ['name', 'city']);
console.log(picked); // { name: 'Alice', city: 'NYC' }Такая функция часто используется в Redux для выборки части состояния, в React для передачи только нужных пропсов, а также в API-слоях для фильтрации входящих данных. Она помогает избежать лишних данных и упрощает отладку.
Используйте pick везде, где нужно получить подмножество свойств объекта — это делает код чище и предотвращает случайную передачу лишних полей.
Frontend developer
Ментор по Frontend
Полное сопровождение до оффера — без дорогих курсов, с оплатой после трудоустройства
Записаться на консультацию