npm install --save remove-undefined-objects
import removeUndefinedObjects from 'remove-undefined-objects';
console.log(removeUndefinedObjects({ key: [], key2: 123 }));
// { key2: 123 }
Any items with the following value will be removed by default:
- Empty object,
{}
- Empty array,
[]
- Undefined,
undefined
The following items will NOT be removed:
- Empty string,
''
- Null,
null
Optional boolean.
If provided, empty arrays []
will not get removed
import removeUndefinedObjects from 'remove-undefined-objects';
console.log(removeUndefinedObjects({ key1: [], key2: [undefined], nested: { key3: 'a', key4: [] } }));
// { nested: { key3: 'a' } }
console.log(
removeUndefinedObjects(
{ key1: [], key2: [undefined], nested: { key3: 'a', key4: [] } },
{ preserveEmptyArray: true },
),
);
// { key1: [], key2: [], nested: { key3: 'a', key4: [] } }
Optional boolean. If provided, null values in arrays will be preserved instead of being removed.
import removeUndefinedObjects from 'remove-undefined-objects';
console.log(removeUndefinedObjects({ key1: [null, undefined], key2: 123, key3: null }));
// { key2: 123, key3: null }
console.log(
removeUndefinedObjects({ key1: [null, undefined], key2: 123, key3: null }, { preserveNullishArrays: true }),
);
// { key1: [null], key2: 123, key3: null }
Optional boolean.
If provided, the empty string ''
and null
will be removed as well.
import removeUndefinedObjects from 'remove-undefined-objects';
console.log(removeUndefinedObjects({ key1: null, key2: 123, key3: '' }, { removeAllFalsy: true }));
// { key2: 123 }