let phone = { brand: "meizu", model: "m2", ram: 2, color: "black", }; const filter1 = (obj, callback) => { return Object.fromEntries(Object.entries(obj).filter(([key, val]) => callback(key, val))); } // или const filter2 = (obj, condition) => { const filteredObj = {}; for (const [key, value] of Object.entries(obj)) { if(condition(key, value)) { filteredObj[key] = obj[key]; } } return filteredObj; } console.log(filter1(phone,(key,value) => key === "color" || value === 2)); // { ram: 2, color: 'black' } console.log(filter2(phone,(key,value) => key === "color" || value === 2)); // { ram: 2, color: 'black' }