_.flatten(array,[isDeep])
nested array 즉, 여러 층으로 만들어진 array를 하나의 층 즉, 하나의 array의 정도는 중요하지 않으나 Shallow에 true값이 부여되면, single level로 통일된다.
//배열 안의 배열 값을 순서대로 나열합니다.(1depth 만)
_.flatten([1, [2, 3,[4]]]]);
// → [1, 2, 3, [4]]
// 배열 안의 배열 값을 깊이와 상관없이 순서대로 나열합니다.
_.flatten([1, [2, 3, [4]]], true);
// → [1, 2, 3, 4]
_.flatten = function (nestedArray) {
let answer = [];
for(let i = 0; i < nestedArray.length; i++) {
let value = nestedArray[i]
!Array.isArray(value) ? answer.push(value) : answer = answer.concat(_.flatten(value));
}
return answer;
};