Recursively compacts collection values (arrays and objects)
JavaScript
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
test
.editorconfig
.gitignore
.jshintrc
.travis.yml
LICENSE
README.md
bower.json
index.js
index.umd.js
package.json

README.md

deep-compact

NPM version Downloads Build Status Dependency status Dev Dependency status Greenkeeper badge

Recursively compacts collection values (arrays and objects), removing empty values from your arrays & objects.
It will also trim and remove empty strings.

Installation

$ npm install deep-compact - NPM
$ bower install deep-compact - bower

The browser file is named index.umd.js which supports CommonJS, AMD and globals (deepCompact). If you want to run this module on old browsers, you must include es5-shim.

Usage

var deepcompact = require('deep-compact');

deepcompact({
    something: [
        {
            colors: ['red', ' green ', ''],
            cars: { audi: 'nice', vw: 'good', aston: '  ' }
        },
        undefined,
        ''
    ],
    foo: 'bar'
});

/*
{
    something: [
        {
            colors: ['red', 'green'],
            cars: { audi: 'nice', vw: 'good' }
        }
    ],
    foo: 'bar'
});
*/

Additionally, deepcompact.isEmpty is exposed because it might be useful to use directly.

Tests

$ npm test

License

Released under the MIT License.