git-subtree-dir: main-site git-subtree-mainline: 4d1daa39101c0a85ca6d916f1c31139faf39632a git-subtree-split: 5cefb4d1618bc54ae0e86830421a8c911900302c
21 lines
405 B
JavaScript
21 lines
405 B
JavaScript
'use strict';
|
|
|
|
module.exports = function omitUndefined(val) {
|
|
if (val == null || typeof val !== 'object') {
|
|
return val;
|
|
}
|
|
if (Array.isArray(val)) {
|
|
for (let i = val.length - 1; i >= 0; --i) {
|
|
if (val[i] === undefined) {
|
|
val.splice(i, 1);
|
|
}
|
|
}
|
|
}
|
|
for (const key of Object.keys(val)) {
|
|
if (val[key] === void 0) {
|
|
delete val[key];
|
|
}
|
|
}
|
|
return val;
|
|
};
|