본문 바로가기

DEV/Javascript

[Javascript]Array를 n개씩 나누기

반응형

1차원 배열을 원하는 길이만큼 2차원 배열로 변환시켜주는 함수입니다.

1. 프로토타입 - Array.division(n)

Array.prototype.division = function (n) {
    var arr = this
    var len = arr.length
    var cnt = Math.floor(len / n) + (Math.floor(len % n) > 0 ? 1 : 0)
    var tmp = [];
     for (var i = 0; i < cnt; i++) { 
        tmp.push(arr.splice(0, n))
    } 
    return tmp
}

 

사용 예시

 

const arr = [0, 1, 2, 3, 4, 5, 6]
const res = a.division(3)
// [[0,1,2], [3,4,5], [6]]

 

반응형