pick

Return a partial object copy containing only specified keys.

Usage

var pick = require( '@stdlib/utils/pick' );

pick( obj, keys )

Returns a partial copy of an object. The returned object contains only specified keys.

var obj1 = {
    'a': 1,
    'b': 2,
    'c': 3
};

var obj2 = pick( obj1, 'b' );
// returns { 'b': 2 }

var obj3 = pick( obj1, [ 'b', 'c' ] );
// returns { 'b': 2, 'c': 3 }

If a key does not exist as an own property in a source object, the key is ignored.

var obj1 = {
    'a': 1,
    'b': 2,
    'c': 3
};

var obj2 = pick( obj1, 'd' );
// returns {}

Notes

  • The function returns a shallow copy.
  • The function only copies own properties. Hence, the function never copies inherited properties.

Examples

var pick = require( '@stdlib/utils/pick' );

var obj1 = {
    'a': 1,
    'b': 2,
    'c': 3,
    'd': 4,
    'e': 5
};

var obj2 = pick( obj1, [ 'b', 'c', 'e' ] );
// returns { 'b': 2, 'c': 3, 'e': 5 }