deep-fusion
v2.0.0
Published
Recursively deep merge nested objects. Zero dependencies, no mutations.
Downloads
645
Maintainers
Readme
deep-fusion
Install
npm install deep-fusionFeatures
- Deep — Recursively merges nested objects at any depth
- Immutable — Always returns a new object, originals stay untouched
- Variadic — Merge two, three, or as many objects as you want
- Tiny — Zero dependencies, minimal footprint
- Universal — Works in Node.js and the browser
Usage
import merge from 'deep-fusion';
// Basic
merge({ a: 1 }, { b: 2 });
// => { a: 1, b: 2 }
// Deep
merge(
{ theme: { color: 'blue', font: 'sans-serif' } },
{ theme: { color: 'red' } }
);
// => { theme: { color: 'red', font: 'sans-serif' } }
// Variadic
merge(
{ person: { name: 'John' } },
{ person: { age: 30 } },
{ person: { job: 'Leader' } }
);
// => { person: { name: 'John', age: 30, job: 'Leader' } }API
merge(...objects)
Deeply merges all given objects into a new object. Later values win on key conflicts. Originals are never mutated.
| Param | Type | Description |
|-------|------|-------------|
| ...objects | object[] | Two or more objects to merge |
| Returns | object | A new merged object |
Testing
npm testChangelog
See CHANGELOG.md for release history.
