The _.zipObject() method is used to combine two arrays into an object one array as keys and the other as values.
Syntax:
_.zipObject([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 an object containing key values corresponding to the given array.
Example 1:
Javascript
const _ = require( 'lodash' ); let x = [ 'a' , 'b' , 'c' ]; let y = [1, 2, 3] let obj = _.zipObject(x, y) console.log(obj); |
Here, const _ = require(‘lodash’) is used to import the lodash library into the file.
Output:
{ a: 1, b: 2, c: 3 }
Example 2:
Javascript
const _ = require( 'lodash' ); let x = [ 'name' , ';language' , 'used' ]; let y = [ 'lodash' , 'JavaScript' , 'nodejs' ] let obj = _.zipObject(x, y) console.log(obj); |
Output:
{ name: 'lodash', ';language': 'JavaScript', used: 'nodejs' }
Example 3: If you pass an extra key and no values for it, it will put undefined value associated with that key.
Javascript
const _ = require( 'lodash' ); let x = [ 'a' , 'b' , 'c' , 'd' ]; let y = [1, 2, 3] let obj = _.zipObject(x, y) console.log(obj); |
Output:
{ a: 1, b: 2, c: 3, d: undefined }
Example 4: If you pass an extra value and no key for it, it will ignore that value.
Javascript
const _ = require( 'lodash' ); let x = [ 'a' , 'b' , 'c' ]; let y = [1, 2, 3, 4] let obj = _.zipObject(x, y) console.log(obj); |
Output:
{ a: 1, b: 2, c: 3 }
Note: This will not work in normal JavaScript because it requires the library lodash to be installed.
Reference: https://lodash.com/docs/4.17.15#zipObject