Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // I have a array
- arr1 = [ { 'name': 'name 1', 'roles': [ 'role_11', 'role_12', ], }, { 'id': 'name 2', 'roles': [ 'role_21', 'role_22', ] } ]
- // I want to form this array from the above array, using lodash functions
- // [ { 'name': 'name 1', 'role': 'role_11', }, { 'name': 'name 1', 'role': 'role_12', }, { 'name': 'name 2', 'role': 'role_11', }, { 'name': 'name 2', 'role': 'role_22', } ]
- arr2 = _.flatten(
- _.map(
- arr1,
- function(item) {
- return _.map(item.roles, function(role) {
- // ``._set` mutates orignal variable (item/arr1), so we do _.cloneDeep to avoid mutation
- return _.omit(_.set(_.cloneDeep(item), 'role', role), 'roles');
- });
- }
- )
- );
- $("body").append(JSON.stringify(arr2));
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement