'Map an array of arrays
Is there a method in lodash to map over an array of arrays
I would like to do something like this so that it keeps the structure of the array.
def double(x) { return x*2 }
_([[1,2],[3,4]]).somemethod(double) == [[2,4],[6,8]]
							
						Solution 1:[1]
You can make your code much cleaner with ES2015 arrow functions:
var array = [[1, 2], [3, 4]];
var double = x => x * 2;
var doubledArray = _.map( array, subarray => _.map( subarray, double ));
Using vanilla JS:
var array = [[1, 2], [3, 4]];
var double = x => x * 2;
var doubledArray = array.map( subarray => subarray.map( double ));
    					Solution 2:[2]
Just _.map it twice:
var array = [[1, 2], [3, 4]];
var doubledArray = _.map(array, function (nested) {
    return _.map(nested, function (element) {
        return element * 2;
    });
});
Or without lodash:
var doubledArray = array.map(function (nested) {
    return nested.map(function (element) {
        return element * 2;
    });
});
Furthermore, consider using es6 arrow functions:
var doubledArray = array.map(nested => nested.map(element => element * 2));
    					Solution 3:[3]
It's much more elegant to use the es6 destructuring syntax within your map statement:
array.map(([ a, b ]) => [ a*2, b*2 ]);
    					Solution 4:[4]
const deepMap=(input,callback)=>input.map(entry=>entry.map?deepMap(entry,callback):callback(entry))
//test 
deepMap([1,2,3,[1,2]],x=>x*2) // [1,4,9,[1,4]]
    					Solution 5:[5]
The simple way to do that at ES5:
[].concat(...this.array1.map(ap => ap.subArray))
    					Solution 6:[6]
It can be a kind of entangle:
var Coef = Array.apply(null, Array(3)).map(function(){return
Array.apply(null, Array(4)).map(function(){return 0})})
Nevertheless, it can be useful if you want to initialize an array in Gas
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source | 
|---|---|
| Solution 1 | TbWill4321 | 
| Solution 2 | |
| Solution 3 | Lord Elrond | 
| Solution 4 | Dharman | 
| Solution 5 | Victor Zamanian | 
| Solution 6 | Unheilig | 
