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]

 

동작 설명

  1. $.map메소드로 배열의 각 요소를 순회합니다.
  2. 요소 배열 파악을 선택하여 $.isArray()사용합니다.
  3. 배열의 경우 다시 호출 flatten을 호출하여 재귀적으로 평탄화합니다.
  4. 배열이 없으면 그대로 유지됩니다.
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