@jsopen/objects
Version:
Helper utilities for working with JavaScript objects and arrays
34 lines (33 loc) • 754 B
JavaScript
import { merge } from './merge.js';
export function omit(obj, keys) {
const keysSet = new Set(keys);
return merge({}, obj, {
deep: false,
filter(key) {
return !keysSet.has(key);
},
});
}
export function omitUndefined(obj, deep) {
return merge({}, obj, {
deep,
ignoreUndefined: true,
copyDescriptors: true,
});
}
export function omitNull(obj, deep) {
return merge({}, obj, {
deep,
ignoreNulls: true,
ignoreUndefined: false,
copyDescriptors: true,
});
}
export function omitNullish(obj, deep) {
return merge({}, obj, {
deep,
ignoreNulls: true,
ignoreUndefined: true,
copyDescriptors: true,
});
}