UNPKG

object-hierarchy-access

Version:

Get/Set value from/to JS object hierarchy properties

17 lines (12 loc) 525 B
const assert = require('assert').strict; const {setIfUndef} = require('../../'); const obj1 = {}; setIfUndef(obj1, 'a', {name: 'b', type: Array}, '0', 100); assert.deepEqual(obj1, {a: {b: [100]}}); setIfUndef(obj1, 'a', 'b', '0', 101); assert.deepEqual(obj1, {a: {b: [100]}}); setIfUndef(obj1, 'a', 'b', '1', 102); assert.deepEqual(obj1, {a: {b: [100, 102]}}); const obj2 = setIfUndef({}, 'a', 'b', 'c1', 200); setIfUndef(obj2, 'a', {name: 'b', override: "true"}, 'c2', 201); assert.deepEqual(obj2, {a: {b: {c2: 201}}});