Create nested getter properties and any intermediary dot notation (
'a.b.c'
) paths
Install with npm:
$ npm install set-getter --save
var getter = require('set-getter');
set-getter works like set-value by adding a property to an object or an object hierarchy using dot notation. The main difference is that the property is added using Object.defineProperty
and is expected to be a getter function that returns a value.
Example
var obj = {};
// root level property
getter(obj, 'foo', function() {
return 'bar';
});
console.log(obj.foo);
//=> 'bar'
// property dot notation
getter(obj, 'bar.baz', function() {
return 'qux';
});
console.log(obj.bar.baz);
//=> 'qux'
// property array notation
getter(obj, ['beep', 'boop'], function() {
return 'bop';
});
console.log(obj.beep.boop);
//=> 'bop'
Defines a getter function on an object using property path notation.
Params
obj
{Object}: Object to add property to.prop
{String|Array}: Property string or array to add.getter
{Function}: Getter function to add as a property.Example
var obj = {};
getter(obj, 'foo', function() {
return 'bar';
});
Pull requests and stars are always welcome. For bugs and feature requests, please create an issue.
Generate readme and API documentation with verb:
$ npm install verb && npm run docs
Or, if verb is installed globally:
$ verb
Install dev dependencies:
$ npm install -d && npm test
Brian Woodward
Copyright © 2016, Brian Woodward. Released under the MIT license.
This file was generated by verb, v0.9.0, on April 29, 2016.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.