Front/JS & jQuery
[jQuery] $.map으로 배열 평탄화하기
오선지♬
2024. 12. 5. 20:05
728x90
반응형
let nestedArray = [[1, 2], [3, 4], [5, 6]];
let flatArray = $.map(nestedArray, function(innerArray) {
return innerArray; // 중첩 배열을 평탄화
});
console.log(flatArray); // [1, 2, 3, 4, 5, 6]
1. 한 단계 평탄화
let nestedArray = [1, [2, 3], [4, [5, 6]]];
// 한 단계만 평탄화
let flatArray = $.map(nestedArray, function(value) {
return value; // 중첩된 배열은 그대로 반환
});
console.log(flatArray);
// [1, 2, 3, 4, [5, 6]]
2. 모든 단계 평탄화
function flatten(array) {
return $.map(array, function(value) {
return $.isArray(value) ? flatten(value) : value;
});
}
let nestedArray = [1, [2, 3], [4, [5, 6]]];
let flatArray = flatten(nestedArray);
console.log(flatArray);
// [1, 2, 3, 4, 5, 6]
동작 설명
- $.map메소드로 배열의 각 요소를 순회합니다.
- 요소 배열 파악을 선택하여 $.isArray()사용합니다.
- 배열의 경우 다시 호출 flatten을 호출하여 재귀적으로 평탄화합니다.
- 배열이 없으면 그대로 유지됩니다.
728x90
반응형