Computer >> Máy Tính >  >> Lập trình >> Javascript

Chuyển mảng thành mảng con - JavaScript

Chúng tôi được yêu cầu viết một hàm JavaScript nhận vào một mảng các ký tự và trả về một mảng mới có các phần tử của mảng ban đầu được chia thành các mảng con có độ dài chính xác là 2.

Bây giờ nếu độ dài của mảng ban đầu không chia hết cho 2, thì mảng con cuối cùng chỉ nên có một phần tử.

Ví dụ:

Nếu mảng đầu vào là -

const arr = [1, 2, 3, 4, 5, 6, 7];

Sau đó, đầu ra phải là -

const output = [[1, 2], [3, 4], [5, 6], [7]]

Ví dụ

Sau đây là mã -

const arr = [1, 2, 3, 4, 5, 6, 7];
const chunk = arr => {
   const size = 2;
   const chunkedArray = [];
   for (let i = 0; i < arr.length; i++) {
      const last = chunkedArray[chunkedArray.length - 1];
      if(!last || last.length === size){
         chunkedArray.push([arr[i]]);
      }else{
         last.push(arr[i]);
      }
   };
   return chunkedArray;
};
console.log(chunk(arr));

Đầu ra

Điều này sẽ tạo ra kết quả sau trên bảng điều khiển -

[ [ 1, 2 ], [ 3, 4 ], [ 5, 6 ], [ 7 ] ]