diff --git a/utils/objectExcept.js b/utils/objectExcept.js new file mode 100644 index 0000000..485f94e --- /dev/null +++ b/utils/objectExcept.js @@ -0,0 +1,14 @@ +export default function objectExcept(obj, subset) { + if (!obj || !subset?.length) { + return {}; + } + + const subsetObject = { ...obj }; + subset.forEach((key) => { + if (key in subsetObject) { + delete subsetObject[key]; + } + }); + + return subsetObject; +} diff --git a/utils/objectSome.js b/utils/objectSome.js new file mode 100644 index 0000000..35e468b --- /dev/null +++ b/utils/objectSome.js @@ -0,0 +1,14 @@ +export default function objectSome(obj, subset) { + if (!obj || !subset?.length) { + return {}; + } + + const subsetObject = {}; + subset.forEach((key) => { + if (key in obj) { + subsetObject[key] = obj[key]; + } + }); + + return subsetObject; +}