@antdv/pro-utils
Version:
@antdv/pro-utils
47 lines (46 loc) • 964 B
JavaScript
function omit(obj, fields) {
const shallowCopy = Object.assign({}, obj);
for (let i = 0; i < fields.length; i += 1) {
const key = fields[i];
delete shallowCopy[key];
}
return shallowCopy;
}
function omitBoolean(obj) {
if (obj && obj !== true) {
return obj;
}
return void 0;
}
function omitUndefined(obj) {
const newObj = {};
Object.keys(obj || {}).forEach((key) => {
if (obj[key] !== void 0) {
newObj[key] = obj[key];
}
});
if (Object.keys(newObj).length < 1) {
return void 0;
}
return newObj;
}
function omitUndefinedAndEmptyArr(obj) {
const newObj = {};
Object.keys(obj || {}).forEach((key) => {
var _a;
if (Array.isArray(obj[key]) && ((_a = obj[key]) == null ? void 0 : _a.length) === 0) {
return;
}
if (obj[key] === void 0) {
return;
}
newObj[key] = obj[key];
});
return newObj;
}
export {
omit,
omitBoolean,
omitUndefined,
omitUndefinedAndEmptyArr
};