const obj = {
group: "rngs",
includeMedia: false,
orderBy: "publishedDate",
topicCodes: []
}
"", [], {}
function filterObject(target) {
return Object.keys(target).reduce((result, key) => {
const value = target[key];
if (!value && typeof value !== "boolean") {
return result;
}
if (typeof value === "object" && Object.keys(value).length === 0) {
return result;
}
return {
...result,
[key]: value
};
}, {});
}
const filterObj = Object.keys(obj).filter(key =>
obj[key].length > 0 || typeof obj[key] === "boolean"
)
console.log('filterObj :', filterObj)