Lodash _.defaultsDeep() method recursively assigns default properties. It is almost the same as the _.defaults() function. This method mutates the object.
Syntax:
_.defaultsDeep(object, [sources]);
Parameters:
- object: This parameter holds the destination object.
- sources: This parameter holds the source objects.
Return Value:
This method returns the object.
Example 1: In this example, we are using the -.defaultsDeep() method for setting the source’s value to the original object.
Javascript
// Requiring the lodash library const _ = require("lodash");Â
// Given objectlet info = {    Name: "neveropen",    password: "gfg@1234",    username: "your_neveropen"}Â
// Use of _.defaultsDeep() methodconsole.log(_.defaultsDeep(info,    _.defaults(info, { id: 'Id97' }))); |
Output:
{
Name: 'neveropen',
password: 'gfg@1234',
username: 'your_neveropen',
id: 'Id97'
}
Example 2: In this example, we are using the -.defaultsDeep() method for setting the source’s value to the original object.
Javascript
// Requiring the lodash library const _ = require("lodash");Â
// Use of _.defaultsDeep() methodconsole.log(_.defaultsDeep(    {        'x': { 'y': 20 }    },    {        'x': { 'y': 10, 'z': 30 }    })); |
Output:
{ 'x': { 'y': 20, 'z': 30 } }
