Delete nested keys from Javascript object
JavaScript
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
test
.gitignore
.travis.yml
LICENSE.md
README.md
index.js
package.json

README.md

Delete (nested) keys from JSON object

Build Status Dependency Status

NPM

NPM

Assumptions

  • original object shall not be modified by default
  • modified object is returned
  • nested keys shall be deleted as well

Usage

  • takes two parameters (object, and keys to delete)
  • second parameter is a string (for single key), or array (for multiple keys)

Installation

npm install key-del

Usage

var deleteKey = require('key-del')
var objWithoutOneAttribute = deleteKey({one: 1, two: 2}, "one")

Examples

var deleteKey = require('key-del')

var originalObject = {
    one: 1,
    two: 2,
    three: {
      nestedOne: 3,
      nestedTwo: 4
    }
}

var result = deleteKey(originalObject, ['one', 'nestedOne'])

console.log(result)
// {two: 2, three: {nestedTwo: 4}}

// Delete nested key by full path
var objectToDeleteKeyFrom = { one: 1, two: 2, nested: {two: 2, three: 3}}
var keyToDelete = 'nested.two'
var result = delKey(objectToDeleteKeyFrom, keyToDelete)
console.log(result)
// { one: 1, two: 2, nested: {three: 3}}

Options

To delete attribue from the original object, set copy parameter to false (its true by default)

deleteKey(originalObject, 'one', {copy: false})
console.log(originalObject)
// original object is modified
// { one: 1, two: 2, three: { nestedOne: 3, nestedTwo: 4 } }

Licence

The MIT License (MIT)

Copyright (c) 2015, Andrei Karpushonak aka @miktam