A simple module that works exactly as Object.assign, but skips assigning undefined values.
npm install object-assign-defined


A tiny, fast and well-tested
JavaScript module that works just like Object.assign, but skips assigning undefined values.
Import the module and use it like this:
``javascript
import objectAssignDefined from "object-assign-defined";
const result = objectAssignDefined(
{
I: 1,
},
{
LIKE: 2,
},
{
TRAINS: undefined,
}
);
// result is { "I": 1, "LIKE": 2 }
`
Note that undefined values in source (first argument) won't be vanished:
`javascript
import objectAssignDefined from "object-assign-defined";
const result = objectAssignDefined(
{
I: undefined,
},
{
LIKE: 2,
},
{
TRAINS: 3,
}
);
// result is { "I": undefined, "LIKE": 2, "TRAINS": 3 }
`
But you can simply filter undefined values by assigning properties to an empty object, like this:
`javascript
import objectAssignDefined from "object-assign-defined";
const result = objectAssignDefined({}, { I: undefined });
// result is {}
``