Flatten array
by AntowaKartowa
JavaScript
var initArr = [1, 2, 3, 4];
var resultArr;
function multiplyAndFlatten1() {
var result = initArr.reduce(process, []);
console.log(result);
function process(flat, item) {
return (item % 2 && flat.concat(item)) || flat.concat([item, item * 2]);
}
}
function multiplyAndFlatten2() {
var result = initArr.map(multiply);
var result = [].concat.apply([], result);
console.log(result);
function multiply(item) {
return (item % 2 && item) || [item, item * 2]
}
}
multiplyAndFlatten1();
multiplyAndFlatten2();