UNPKG

object-hierarchy-access

Version:

Get/Set value from/to JS object hierarchy properties

19 lines (16 loc) 703 B
const assert = require('assert').strict; const {assignIfUndef} = require('../../'); const obj1 = {}; const result1a = assignIfUndef(obj1, 'a', 'b', 'c', null); assert.deepEqual(obj1, {a: {b: {c: null}}}); assert.deepEqual(result1a, {c: null}); const result1b = assignIfUndef(obj1, 'a', 'b', 'c', 100); assert.deepEqual(obj1, {a: {b: {c: null}}}); assert.deepEqual(result1b, {c: null}); const obj2 = {}; const result2a = assignIfUndef(obj2, 'a', 'b', 'c', undefined); assert.deepEqual(obj2, {a: {b: {c: undefined}}}); assert.deepEqual(result2a, {c: undefined}); const result2b = assignIfUndef(obj2, 'a', 'b', 'c', 200); assert.deepEqual(obj2, {a: {b: {c: 200}}}); assert.deepEqual(result2b, {c: 200});