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 }
See Also
@stdlib/utils/pick-by: return a partial object copy containing properties for which a predicate (function) returns a truthy value.