remove-undefined-objects
TypeScript icon, indicating that this package has built-in type declarations

7.0.0 • Public • Published

remove-undefined-objects

Build

Installation

npm install --save remove-undefined-objects

Usage

import removeUndefinedObjects from 'remove-undefined-objects';

console.log(removeUndefinedObjects({ key: [], key2: 123 }));
// { key2: 123 }

Behavior

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

Options

preserveEmptyArray

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: [] } }

preserveNullishArrays

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 }

removeAllFalsy

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 }

Readme

Keywords

none

Package Sidebar

Install

npm i remove-undefined-objects

Weekly Downloads

287,150

Version

7.0.0

License

MIT

Unpacked Size

30.7 kB

Total Files

14

Last publish

Collaborators

  • gkoberger
  • domharrington
  • mjcuva
  • kanadgupta
  • jonursenbach
  • rafegoldberg
  • dannobytes
  • gratcliff
  • llimllib
  • darrenyong
  • azinder1
  • kellyjosephprice