Nested property
Read or write an array or object's nested property via a string like 'my.nested.property'
Installation
npm install nested-property
How to use
Require nested-property:
var nestedProperty = require("nested-property");
You can get a nested property from an object:
var object = {
a: {
b: {
c: {
d: 5
}
}
}
};
nestedProperty.get(object, "a");
nestedProperty.get(object, "a.b.c");
nestedProperty.get(object, "a.b.c.d");
nestedProperty.get(object, "a.d.c");
nestedProperty.get(object);
nestedProperty.get(null);
It also works through arrays:
var array = [{
a: {
b: [0, 1]
}
}];
nestedProperty.get(array, "0");
nestedProperty.get(array, "0.a.b");
nestedProperty.get(array, "0.a.b.0");
nestedProperty.get(array, "1.a.b.c");
You can set a nested property on an object:
var object = {
a: {
b: {
c: {
d: 5
}
}
}
};
nestedProperty.set(object, "a", 1);
nestedProperty.set(object, "a.b.c", 1337);
nestedProperty.set(object, "e.f.g", 1);
nestedProperty.set(object);
nestedProperty.set(null);
You can also set a nested property through arrays:
var array = [
{
a: [0, 1]
}
];
nestedProperty.set(array, "0.a.0", 10);
nestedProperty.set(array, "0.b.c", 1337);
Caveat!
var object = {};
nestedProperty.set(object, "0.1.2", "new object");
{
"0": {
"1": {
"2": "new object"
}
}
}
LICENSE
MIT