The _.zipObjectDeep() method is similar to _.zipObject() method except that it supports property paths and also, it accepts two arrays, one of property identifiers and one of corresponding values.
Syntax:
_.zipObjectDeep([props=[]], [values=[]])
Parameters: This method accepts two parameters as mentioned above and described below:
- [props=[]] (Array): This parameter holds the property identifiers.
- [values=[]] (Array): This parameter holds the property values.
Return Value: This method returns the new object.
Example 1: Here, const _ = require(‘lodash’) is used to import the lodash library in the file.
javascript
// Requiring the lodash library const _ = require( "lodash" ); // Original array var obj1 = [ 'a.b[0].c' , 'a.b[1].d' ]; // Use of _.zipObjectDeep() method let gfg = _.zipObjectDeep(obj1, [1, 2]); // Printing the output console.log(gfg); |
Output:
{ a: { b: [ [ object ], [object] ] } }
Example 2:
javascript
// Requiring the lodash library const _ = require( "lodash" ); // Original array var obj1 = ([ 40, 30, 90 ]); // Use of _.zipObjectDeep() method let gfg = _.zipObjectDeep(obj1, [ 1, 2, 3 ]); // Printing the output console.log(gfg); |
Output:
{ '30': 2, '40': 1, '90': 3 }
Example 3:
javascript
// Requiring the lodash library const _ = require( "lodash" ); // Original array var obj1 = ([ 'a' , 'g' , 'h' , 'b' , 'c' , 'd' , 'e' , 'f' ]); // Use of _.zipObjectDeep() // method let gfg = _.zipObjectDeep(obj1, [1, 2, 3, 4, 5, 6, 7]); // Printing the output console.log(gfg); |
Output:
{ a: 1, g: 2, h: 3, b: 4, c: 5, d: 6, e: 7, f: undefined }
Note: This code will not work in normal JavaScript because it requires the library lodash to be installed.