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
반응형
'Front > JS & jQuery' 카테고리의 다른 글
[js] 재귀함수로 배열 평탄화 (0) | 2024.12.07 |
---|---|
[js] 배열 평탄화 flat() (0) | 2024.12.06 |
[jQuery] HTML 요소의 데이터를 배열로 변환 (0) | 2024.12.04 |
[jQuery] $.map() (0) | 2024.12.03 |
[js][datatables] 엑셀 파일명 설정 (0) | 2024.11.26 |