Lodash _.assignInWith() Method
Last Updated :
03 Nov, 2023
Lodash _.assignInWith() method of Object in lodash is similar to _.assignIn the method and the only difference is that it accepts customizer which is called in order to generate assigned value. Moreover, if the customizer used here returns undefined then the assignment is dealt with by the method instead.
Note:
- The customizer used here can be called with five arguments namely objValue, srcValue, key, object, and source.
- The object used here is altered by this method.
Syntax:
_.assignInWith(object, sources, [customizer])
Parameters:
- object: It is the destination object.
- sources: It is the source of objects.
- customizer: It is the function that customizes assigned values.
Return Value:
This method returns the object.
Example 1: In this example, we are changing the value to the object by passing the source, destination object, and the modified value in the lodash _.assignInWith() method.
Javascript
const _ = require( 'lodash' );
function customizer(objectVal, sourceVal) {
return _.isUndefined(objectVal) ? sourceVal : objectVal;
}
let obj = _.assignInWith({ 'gfg' : 1 }, { 'geek' : 3 }, customizer);
console.log(obj);
|
Output:
{ gfg: 1, geek: 3 }
Example 2: In this example, we are changing the value to the function’s properties by passing the source, destination object, and the modified value in the lodash _.assignInWith() method.
Javascript
const _ = require( 'lodash' );
function customizer(objectVal, sourceVal) {
return _.isUndefined(objectVal) ? sourceVal : objectVal;
}
function GfG() {
this .p = 7;
}
function Portal() {
this .r = 9;
}
GfG.prototype.q = 8;
Portal.prototype.s = 10;
let obj = _.assignInWith({ 'p' : 6 },
new GfG, new Portal, customizer);
console.log(obj);
|
Output:
{ p: 6, q: 8, r: 9, s: 10 }
Reference: https://lodash.com/docs/4.17.15#assignInWith
Like Article
Suggest improvement
Share your thoughts in the comments
Please Login to comment...