1.0.3 • Published 2 years ago

deep-object-merger v1.0.3

Weekly downloads
-
License
ISC
Repository
github
Last release
2 years ago

Deep Object Merger

Deep merge 1 or more objects over a target. Keys that are not in common with sources will remain unchanged in the target. All the keys from sources not present in target will be merged (so added to the target object) You can add as many sources object as you want but the first object passed will be the target.

Usage example:

var deepMerge = require('deep-object-merger')

Let's suppose we have 3 complex JSON objects and we want to merge userData2 and userData3 over userData1:

let userData1 = {
	"id": 213827,
	"data" : {
		"username": "testUser1",
		"subscriptionDate": "01-02-2022",
		"address" : {
			"country": "Italy"
		}
	},
	"someArrayProperties": [2,412,12,3,2]
}

let userData2 = {
	"id": 213827,
	"data" : {
		"username": "testUser2",
		"email": "newEmail@gmail.com",
		"address" : {
			"country": "Italy",
			"street": "Example street",
		}
	},
	"someArrayProperties": [2,412,12,3,2,657]
}

let userData3 = {
	"id": 213827,
	"dummyContent": ["Just", "Dummy", "Content"]
}



//calling

var mergeResult = deepMerge(userData1, userData2, userData3) 
console.log(mergeResult);
	
//DeepMerge will produce a result like this:

{
  id: 213827,
  data: {
    username: 'testUser2',
    subscriptionDate: '01-02-2022',
    address: { country: 'Italy', street: 'Example street' },
    email: 'newEmail@gmail.com'
  },
  someArrayProperties: [ 2, 412, 12, 3, 2, 657 ],
  dummyContent: [ 'Just', 'Dummy', 'Content' ]
}
1.0.3

2 years ago

1.0.2

2 years ago

1.0.1

2 years ago

1.0.0

2 years ago